在 Java 編程中,隊(duì)列 (Queue) 是一種常見的數(shù)據(jù)結(jié)構(gòu),它遵循“先進(jìn)先出” (FIFO) 的原則,即先進(jìn)入隊(duì)列的元素先被取出。
隊(duì)列中的元素被稱為隊(duì)列元素 (Queue Elements)。在 Java 中,我們可以使用 Queue 接口來實(shí)現(xiàn)隊(duì)列數(shù)據(jù)結(jié)構(gòu)。Queue 接口繼承了 Collection 接口,但并沒有添加新的方法。不過,Queue 接口通過繼承 Collection 接口自動(dòng)獲得了一些有用的方法,例如 add() 和 remove() 方法。接下來我們來了解一下隊(duì)列的入隊(duì)和出隊(duì)操作。
public static void main(String[] args) { // 使用 LinkedList 實(shí)現(xiàn)隊(duì)列 Queue<String> queue = new LinkedList<>(); // 元素入隊(duì) queue.add("Java"); queue.add("Python"); queue.add("C++"); // 隊(duì)列元素個(gè)數(shù) System.out.println("隊(duì)列元素個(gè)數(shù):" + queue.size()); // 隊(duì)列元素個(gè)數(shù):3 // 隊(duì)列頭元素出隊(duì) String elem = queue.remove(); System.out.println("隊(duì)列頭元素:" + elem); // 隊(duì)列頭元素:Java // 隊(duì)列元素個(gè)數(shù) System.out.println("隊(duì)列元素個(gè)數(shù):" + queue.size()); // 隊(duì)列元素個(gè)數(shù):2 }
如上所示,我們通過 LinkedList 實(shí)現(xiàn)了隊(duì)列,然后使用 add() 方法將元素依次添加到隊(duì)列中。注意:LinkedList 實(shí)現(xiàn)的是雙向鏈表,所以可以在隊(duì)列頭部或尾部插入或刪除元素。
接下來,我們通過 remove() 方法從隊(duì)列頭部刪除元素,用一個(gè) String 類型的變量 elem 來保存刪除的元素。注意:remove() 方法將拋出 NoSuchElementException 異常,如果隊(duì)列為空。
最后,我們使用 size() 方法獲取隊(duì)列中元素的個(gè)數(shù),并輸出到控制臺(tái)。