您的位置:首页 > 产品设计 > UI/UE

java的队列使用queue防止异常抛出

2016-08-22 11:16 411 查看
队列通常(但并非一定)以 FIFO(先进先出)的方式排序各个元素。

在java5中新增加了java.util.Queue接口,用以支持队列的常见操作。该接口扩展了java.util.Collection接口。

Queue使用时要尽量避免Collection的add()和remove()方法,而是要使用offer()来加入元素,使用peek()来获取头元素,使用poll()来获取并移出元素。它们的优

点是通过返回值可以判断成功与否,add()和remove()方法在失败的时候会抛出异常。 如果要使用前端而不移出该元素,使用

element()或者peek()方法。

值得注意的是LinkedList类实现了Queue接口,因此我们可以把LinkedList当成Queue来用。

一个小的demo

import java.util.Queue;   

import java.util.LinkedList;   

public class TestQueue {   

    public static void main(String[] args) {   

        Queue<String> queue = new LinkedList<String>();   

        queue.offer("Hello");   

        queue.offer("World!");   

        queue.offer("你好!");   

        System.out.println(queue.size());   

        String str;   

        while((str=queue.poll())!=null){   

            System.out.print(str);   

        }   

        System.out.println();   

        System.out.println(queue.size());   

    }   


改造后的代码:package queue.com;

import java.util.LinkedList;
import java.util.Queue;

public class TestQueue {

public static void main(String[] args) {
// TODO Auto-generated method stub
Queue<String> queue = new LinkedList<String>();
queue.offer("Hello");
queue.offer("World!");
queue.offer("你好!");
System.out.println(queue.size());
String str;
while ((str = queue.poll()) != null) {
System.out.print(str+"\r\n");
}
// System.out.println();
System.out.println(queue.size());
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  queue