Java集合框架之如何使用Stack Queue Deque

技术Java集合框架之如何使用Stack Queue Deque本篇内容主要讲解“Java集合框架之如何使用Stack Queue Deque”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编

本文主要讲解“如何在Java集合框架中使用Stack Queue Deque”。感兴趣的朋友不妨看看。本文介绍的方法简单、快速、实用。让边肖带你学习如何在Java集合框架中使用Stack Queue Deque。

目录

1.堆

1.1导言

1.2常用方法。

2.长队

2.1导言

2.2常用方法。

3.双端队列

3.1导言

3.2常用方法。

00-1010

1. Stack

Stack是Vector的一个子类,它实现了标准的后进先出堆栈。它的底部是一个数组。

只为堆栈定义了默认构造函数来创建空堆栈。除了Vector定义的所有方法之外,堆栈还定义了一些自己的方法。

00-1010方法描述E push(E项)push E pop()push E peek()查看栈顶元素,不删除boolean empty()判断栈是否为空。注意:下面的例子都是从一个代码中单独取出来的,它们之间是有逻辑关系的。

示例:使用Stack构造一个元素是塑料的堆栈。

stackkintegerstack=newStack();示例2:推送堆栈。

stack . push(1);

stack . push(2);

stack . push(3);

//结果是:[1,2,3]例3:检查栈顶元素,不删除。

system . out . println(stack . peek());

System.out.println(堆栈);

//结果为:3和[1,2,3]例4:叠加。

system . out . println(stack . pop());

System.out.println(堆栈);

//结果为:3和[1,2]例5:判断堆栈是否为空。

system . out . println(stack . empty());

//结果是:false

1.1 介绍

1.2 常见方法

Queue是一个特殊的线性表,只允许在表的前端删除,表的后端插入。

LinkedList类实现了Queue接口,所以我们可以使用LinkedList作为Queue。

00-1010方法描述布尔offer(E e)进入队列(出错时返回特殊值)布尔add(E e e)进入队列(出错时抛出异常)E poll()退出队列(出错时返回特殊值)E remove()退出队列(出错时抛出异常)epeck()获取队列头。

元素,不删除(出现错误返回特殊值)E element()得到队首元素,不删除(出现错误抛异常)boolean isEmpty()判断队列是否为空

注意: 接下来使用 LinkedList 演示队列的使用方法,只要把握先进先出的原则就行。下面的示例都是一份代码分开拿出来的,上下其实是有逻辑关系的

示例一: 使用 LinkedList 创建一个元素为整型的队列

LinkedList<Integer> linkedList = new LinkedList<>();

示例二: 入队列

linkedList.offer(1);
linkedList.offer(2);
linkedList.offer(3);

示例三: 出队列

System.out.println(linkedList.poll());
// 结果为:1

示例四: 得到队首元素,不删除

System.out.println(linkedList.peek());
// 结果为:2

示例五: 判断队列是否为空

System.out.println(linkedList.isEmpty());
// 结果为:false

3. Deque

3.1 介绍

双端队列是指允许两端都可以进行入队和出队操作的队列。元素可以从队头出队和入队,也可以从队尾出队和入队

LinkedList 类实现了 Deque 接口,因此我们可以把 LinkedList 当成 Deque 来用。

3.2 常见方法

方法 描述
boolean offerFirst(E e) 从队头入队
boolean offerLast(E e) 从队尾入队
E pollFirst() 从队头出队
E pollLast() 从队尾出队
E peekFirst() 得到队头元素,不删除
E peekLast() 得到队尾元素,不删除

注意: 接下来使用 LinkedList 演示队列的使用方法,只要把握先进先出的原则就行。下面的示例都是一份代码分开拿出来的,上下其实是有逻辑关系的

示例一: 使用 LinkedList 创建一个元素为整型的队列

LinkedList<Integer> linkedList = new LinkedList<>();

示例二: 从队头入队

linkedList.offerFirst(1);
linkedList.offerFirst(2);
linkedList.offerFirst(3);
// 队列为:[3, 2, 1]

示例三: 从队尾入队

linkedList.offerLast(7);
linkedList.offerLast(8);
linkedList.offerLast(9);
// 队列为:[3, 2, 1, 7, 8, 9]

示例四: 从队头出队

System.out.println(linkedList.pollFirst());
// 结果为:3

示例五: 从队尾出队

System.out.println(linkedList.pollLast());
// 结果为:9

示例六: 得到队头元素,不删除

System.out.println(linkedList.peekFirst());
// 结果为:2

示例七: 得到队头元素,不删除

System.out.println(linkedList.peekLast());
// 结果为:8

到此,相信大家对“Java集合框架之如何使用Stack Queue Deque”有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/47497.html

(0)

相关推荐

  • 值得收藏的CSS可视化工具有哪些

    技术值得收藏的CSS可视化工具有哪些这篇文章主要讲解了“值得收藏的CSS可视化工具有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“值得收藏的CSS可视化工具有哪些”吧

    攻略 2021年11月8日
  • 管中什么豹,管中窥豹见微知著什么意思

    技术管中什么豹,管中窥豹见微知著什么意思微:隐约;著:明显。 见微知著,意思是见到事情的苗头,就能知道它的实质和发展趋势。 比喻小中见大管中什么豹、以小见大。 出处:汉·班固《白虎通·情性》:“智者,知也。独见前闻,不惑

    生活 2021年10月24日
  • 岁寒三友是指什么,《寻隐者不遇》全诗的意思

    技术岁寒三友是指什么,《寻隐者不遇》全诗的意思《寻隐者不遇》贾岛    
    松下问童子,言师采药去岁寒三友是指什么。
    只在此山中,云深不知处。 1. 译文如下:
    苍松下,我询问隐者的童子他的师傅到哪里去了?
    他说,

    生活 2021年10月21日
  • 晟和哪个字搭配寓意好,与晟字搭配的公司起名有哪些

    技术晟和哪个字搭配寓意好,与晟字搭配的公司起名有哪些与晟字搭配的公司名字有千晓晟晟和哪个字搭配寓意好、日晟、晟睿、领晟科技、启晟等。 1、千晓晟 千字是数目字,比喻数甚大,给人大气之感,也意指公司财源广进。晓字有天明之义

    生活 2021年10月26日
  • 苏轼的古诗有哪些,苏轼写的诗有哪些,古诗三百首

    技术苏轼的古诗有哪些,苏轼写的诗有哪些,古诗三百首1、 《题西林壁》 宋代:苏轼 横看成岭侧成峰苏轼的古诗有哪些,远近高低各不同。 不识庐山真面目,只缘身在此山中。 2、 《饮湖上初晴后雨二首》 宋代:苏轼 水光潋滟晴方

    生活 2021年10月29日
  • ajax是网页开发技术吗

    技术ajax是网页开发技术吗这篇文章主要介绍“ajax是网页开发技术吗”,在日常操作中,相信很多人在ajax是网页开发技术吗问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”ajax是网页开发

    攻略 2021年12月9日