LinkedList的使用方法和案例详解,以及注意事项




import java.util.Iterator;
import java.util.Deque;
import java.util.LinkedList;
import java.util.Queue;


public class LinkedListDemo {


public static void linkedShow() {
// 创建一个队列
Queue<Integer> queue = new LinkedList<>();
queue.add(1);// 添加元素
queue.offer(22);
// 使用增强for循环遍历输出
for (Integer integer : queue) {
System.out.println(integer);
}
System.out.println("<----------分割线------------->");
Integer a = queue.peek();// 获取但不移除此队列的头
System.out.println(a + ">>>>" + queue.size());
// 输出获取的元素并打印出元素的长度,验证一下长度看看是否有变化
Integer bInteger = queue.poll();// 获取并移除此队列的头
System.out.println(bInteger + ">>>>>" + queue.size());
// 输出获取的元素并打印出元素的长度,验证一下长度看看是否有变化


}


// deque方法的验证
public static void linkedDeque() {
Deque<Integer> deque = new LinkedList<>();
deque.add(3);// 添加元素
deque.offerFirst(5);// 在第一个位子添加元素
deque.offerLast(7);// 在最后一个地方添加元素
for (Integer integer : deque) {// 使用增强for循环遍历输出
System.out.println(integer);
}
// 取出不移除元素


Integer kInteger = deque.peekFirst();
Integer mInteger = deque.peekLast();
System.out.println(kInteger + ">>>>" + mInteger + ">>>>" + deque.size());
// 取出并移除元素方法
Integer kInteger2 = deque.pollFirst();
Integer mInteger2 = deque.pollLast();
System.out.println(kInteger2 + ">>>>" + mInteger2 + ">>>>" + deque.size());


}


// pop和push的使用案例
public static void linkedListPop() {
// 创建一个linkedlist集合
LinkedList<Integer> linkedList = new LinkedList<>();
linkedList.push(9);// 添加元素
linkedList.push(7);
linkedList.push(5);
linkedList.push(3);
linkedList.push(1);
// 使用增强for循环遍历输出;
for (Integer integer : linkedList) {
System.out.println(integer);
}


System.out.println(">------------------------<");
// 使用迭代器进行正向输出
Iterator<Integer> inIterator = linkedList.iterator();
while (inIterator.hasNext()) {
Integer integer = (Integer) inIterator.next();
System.out.println(integer);
}
// 使用迭代器反向输出结果
Iterator<Integer> inIterator1 = linkedList.descendingIterator();
while (inIterator1.hasNext()) {
Integer integer = (Integer) inIterator1.next();
System.out.println(integer);
}
// 使用for循环进行输出元素并移除
System.out.println("<-----分割线------->");
for (int i = 0; i <= 4; i++) {
//此处不可以使用linkedlist.size();因为linkedlist.size()是变化的
Integer result = linkedList.pop();
System.out.println(result + ">------<" + "\n" + linkedList.size());
}
}


public static void main(String[] args) {

 linkedShow();// 主函数中调用 linkedDeque();
 linkedDeque();
linkedListPop();
}


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值