當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Java Collections asLifoQueue()用法及代碼示例


java.util.Collections類的asLifoQueue()方法用於返回Deque的視圖作為後進先出(Lifo)隊列。方法add映射為push,remove映射為pop等。當您想使用需要Queue但需要Lifo排序的方法時,此視圖很有用。

此方法返回的隊列上的每個方法調用都會在後備雙端隊列上恰好產生一個方法調用,但有一個例外。 addAll方法作為對後備雙端隊列的addFirst調用序列實現。

用法:


public static Queue asLifoQueue(Deque deque)

參數:此方法將雙端隊列作為要轉換為LifoQueue的參數。

返回值:此方法從雙端隊列返回一個LifoQueue。

以下示例說明了asLifoQueue()方法

示例1:

// Java program to demonstrate 
// asLifoQueue() method 
  
import java.util.*; 
  
public class GFG1 { 
    public static void main(String[] argv) throws Exception 
    { 
  
        try { 
  
            // creating object of Deque<Integer> 
            Deque<Integer> deque = new ArrayDeque<Integer>(7); 
  
            // Adding element to deque 
            deque.add(1); 
            deque.add(2); 
            deque.add(3); 
            deque.add(4); 
            deque.add(5); 
  
            // get queue from the deque 
            // using asLifoQueue() method 
            Queue<Integer> nq = Collections.asLifoQueue(deque); 
  
            // printng the Queue 
            System.out.println("View of the queue is: " + nq); 
        } 
        catch (IllegalArgumentException e) { 
  
            System.out.println("Exception thrown : " + e); 
        } 
    } 
}
輸出:
View of the queue is: [1, 2, 3, 4, 5]

示例2:

// Java program to demonstrate 
// asLifoQueue() method 
  
import java.util.*; 
  
public class GFG1 { 
    public static void main(String[] argv) throws Exception 
    { 
        try { 
  
            // creating object of Deque<Integer> 
            Deque<String> deque = new ArrayDeque<String>(7); 
  
            // Adding element to deque 
            deque.add("Ram"); 
            deque.add("Gopal"); 
            deque.add("Verma"); 
  
            // get queue from the deque 
            // using asLifoQueue() method 
            Queue<String> nq = Collections.asLifoQueue(deque); 
  
            // printng the Queue 
            System.out.println("View of the queue is: " + nq); 
        } 
        catch (IllegalArgumentException e) { 
  
            System.out.println("Exception thrown : " + e); 
        } 
    } 
}
輸出:
View of the queue is: [Ram, Gopal, Verma]


相關用法


注:本文由純淨天空篩選整理自RohitPrasad3大神的英文原創作品 Collections asLifoQueue() method in Java with Examples。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。