当前位置: 首页 > 面试题库 >

Java集合(LIFO结构)

司徒瀚
2023-03-14
问题内容

我正在寻找Java的LIFO结构(堆栈)的Collections框架,但没有成功。基本上,我想要一个非常简单的堆栈;我最好的选择是Deque,但是我使用Java
1.5。

我不想不必在我的结构中添加另一个类,但是我想知道是否可行:

  1. Collections框架(1.5)中是否有任何类可以完成这项工作?

  2. 如果没有,是否有任何方法可以在不重新实现的情况下在LIFO队列(又称为堆栈)中转换队列?

  3. 如果没有,我应该为该任务扩展哪个接口或类?我猜想保持Sun球员与Deque的合作方式是一个好的开始。

非常感谢。

编辑:我忘了说一下Stack类:当我看到它实现了Vector类时,我对此类感到怀疑,而Vector类有点过时了,不是吗?


问题答案:

实际上有一个Stack类:http
:
//java.sun.com/j2se/1.5.0/docs/api/java/util/Stack.html

如果您不想使用它,则LinkedList类(http://java.sun.com/j2se/1.5.0/docs/api/java/util/LinkedList.html)具有addFirstaddLastremoveFirstremoveLast方法,使它成为可能非常适合用作堆栈或队列类。



 类似资料:
  • 我一直在玩Python 3.10中的结构模式匹配,但不知道如何让它匹配一组。例如,我尝试过: 我尝试过: 以及: 我想有一种方法可以做到这一点,因为我们可以匹配其他对象,我只是缺少正确的语法,但我想不出还有什么其他方法可以尝试。任何帮助都将不胜感激!谢谢

  • 主要内容:示例YAML包括使用缩进范围的块集合。 在这里,每个条目都以一个新行开头。 集合中的块序列表示每个条目带有破折号和空格( )。 在YAML中,块集合样式不由任何特定指示符表示。 YAML中的块集合可以与其他标量数量区分开来,并且包含其中包含的键值对的标识。 映射是JSON结构中包含的键值的表示。 它经常用于多语言支持系统以及在移动应用程序中创建API。 映射使用键值对表示以及冒号和空格()的使用。 示

  • 问题内容: 我希望将空结果集的总计设置为0。我尝试了以下方法: 结果: 子问题:上面的工作在Oracle中行不通吗? 问题答案: 在有关聚合函数的文档页面中: 应该注意的是,除了这些函数, 当没有选择任何行时 ,这些函数将 返回空值 。特别是,没有行返回空值,而不是预期的零值。必要时,该函数可用于将零替换为null。 所以,如果你想保证返回的值,适用于 结果 的,而不是它的参数: 至于Oracle

  • 在编程时,可以使用数组来保存多个对象,但数组长度不可变化,一旦在初始化数组时指定了数组长度,这个数组长度就是不可变的。如果需要保存数量变化的数据,数组就有点无能为力了。而且数组无法保存具有映射关系的数据,如成绩表为语文——79,数学——80,这种数据看上去像两个数组,但这两个数组的元素之间有一定的关联关系。 为了保存数量不确定的数据,以及保存具有映射关系的数据(也被称为关联数组), Java 提供

  • 目标 了解 Java 集合框架的用途 了解如何声明和使用 Java 数组、列表、集和映射 了解装箱和拆箱 了解如何让集合可迭代 Java 集合框架 大多数真实应用程序都会处理像文件、变量、来自文件的记录或数据库结果集这样的集合。Java 语言有一个复杂的集合框架,您可以使用它创建和管理各种类型的对象集合。本单元将介绍最常用的集合类并帮助您开始使用它们。 数组 备注:本单元的代码示例中的方括号是 J

  • 在前面的小节中,我们学习了数组,本小节学习的集合同样用于存放一组数据,我们将学习什么是集合、集合的应用场景 ,在应用场景部分我们将对比 Java 数组与集合的区别,还将系统介绍 Java 集合的架构,也将结合实例来讲解集合的实际应用。 1. 什么是集合 在计算机科学中,集合是一组可变数量的数据项(也可能为 0 个)的组合,这些数据可能共享某些特征,需要以某种操作方式一起进行操作。 Java 中集合