java队列的实现_java 队列的实现

List list = new LinkedList<>();

Queue queue = new LinkedList();

queue.offer("a");

queue.offer("b");

offer,add 区别:

一些队列有大小限制,因此如果想在一个满的队列中加入一个新项,多出的项就会被拒绝。

这时新的 offer 方法就可以起作用了。它不是对调用 add() 方法抛出一个 unchecked 异常,而只是得到由 offer() 返回的 false。

poll,remove 区别:

remove() 和 poll() 方法都是从队列中删除第一个元素。remove() 的行为与 Collection 接口的版本相似, 但是新的 poll() 方法在用空集合调用时不是抛出异常,只是返回 null。因此新的方法更适合容易出现异常条件的情况。

peek,element区别:

element() 和 peek() 用于在队列的头部查询元素。与 remove() 方法类似,在队列为空时, element() 抛出一个异常,而 peek() 返回 null。

import java.util.LinkedList;

import org.junit.Test;public classQueueTest {//使用集合定义一个队列

class Queue{//List list = new ArrayList<>();

LinkedList list = new LinkedList<>();int size = 0; //下标//入队

public void in(T n){//添加元素

//list.add(n);

list.offfer(n);

size++;

}//出队

public T out(){if(!list.isEmpty()){

size--;return list.remove(0);//return list.removeFirst();

}return null;

}

}

@Testpublic voidtestQueue() throws Exception {

Queue queue = new Queue();

queue.in(1);

queue.in(2);

queue.in(3);

queue.in(4);

LinkedList linkedList =queue.list;while(queue.size>0) {

Integerout = queue.out();

System.err.println(out);

}

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值