Java中Deque栈对象的增删查(所有方法详解)
  DosddciaWHNX 2023年12月02日 20 0


1、Deque栈的增删查方法总结

Java中Deque栈对象的增删查(所有方法详解)_java

2、方法增删查

  • 栈顶添加:push、offFirst
  • 栈尾添加:add、offer、offerLast
  • 栈顶删除:remove、pop、poll、pollFirst
  • 栈尾删除:pollLast
  • 栈顶查看:peek、peekFirst
  • 栈尾查看:peekLast

3、方法返回值

  • add、offer、offerFirst、offerLast 返回 boolean 类型;
  • push 无返回值;
  • peek、peekFirst、peekLast 是查看功能,返回值类型自然都是元素类型;
  • pop、remove、poll、pollFirst、pollLast 在删除元素的同时,返回该元素值。

4、方法返回值总结

  • 删除元素的方法,全部都会返回所删除的元素值;
  • 查看元素的方法,全部都会返回所查看的元素值;
  • 添加元素的方法,除了push无返回值外,其他方法全部都返回 boolean 值。

5、练习代码

import java.util.Deque;
import java.util.LinkedList;

public class DequeTest {

    public static void main(String[] args) {
        Deque<Integer> stack = new LinkedList<Integer>();
        System.out.println(stack.add(1));  //true
        System.out.println(stack.add(2));  //true
        stack.push(3);
        stack.push(4);
        stack.push(5);
        System.out.println(stack.pop());  //5
        System.out.println(stack.peek());  //4
        System.out.println(stack.peekFirst());  //4
        System.out.println(stack.peekLast());  //2
        System.out.println(stack.remove());  //4
        System.out.println(stack.add(6));  //true
        System.out.println(stack.offer(7));  //true
        System.out.println(stack.offerFirst(8));  //true
        System.out.println(stack.offerLast(9));  //true
        System.out.println(stack.pop());  //8
        System.out.println(stack.poll());  //3
        System.out.println(stack.pollFirst());  //1
        System.out.println(stack.pollLast());  //9
    }
}

6、Deque之所以有这么多方法是因为错综复杂的继承关系

图引用自:Java的LinkedList/Deque中add/offer/push,remove/pop/poll的区别 - 简书

Java中Deque栈对象的增删查(所有方法详解)_java_02

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年12月02日 0

暂无评论

推荐阅读
  xaeiTka4h8LY   2024年05月17日   51   0   0 数据库JavaSQL
  2iBE5Ikkruz5   2023年12月12日   92   0   0 JavaJavaredisredis
DosddciaWHNX