你如何在java中将堆栈初始化为空?

Posted

技术标签:

【中文标题】你如何在java中将堆栈初始化为空?【英文标题】:How do you initialize a stack to be empty in java? 【发布时间】:2021-12-12 07:53:39 【问题描述】:

给我

   private Stack<Double> stack

在创建默认构造函数时,我被问到如下:

  "Initialize stack to be an empty Stack to hold double data values"

我已经尝试了一些类似 stack.empty() 的方法,但我猜 empty() 的功能与 isEmpty() 相同,这并没有多大帮助。有谁知道如何初始化一个空堆栈?

【问题讨论】:

stack = new Stack&lt;&gt;();? 首先我将从问题的“初始化堆栈”部分开始,即new Stack&lt;&gt;()。然后,我会查看 Stack 构造函数的 documentation,我会看到它说“创建一个空的 Stack”。伟大的!它已经是空的,所以我不需要做任何其他事情。老实说,您似乎并没有为您的问题付出太多努力,因为您没有发布任何尝试。下次您应该发布您尝试过的内容以及您的研究结果。 如果你的 Java 老师没有在第一课中解释在哪里可以找到在线 Java 文档以及它是如何组织的……抱怨。这是应该尽早提供给所有 Java 新学生的重要信息。当然,在他们进行第一次编程练习之前。 【参考方案1】:

创建Stack 对象时默认为空。所以只是

private Stack<Double> stack = new Stack<>();

将其初始化为空就足够了。

如果你不想分离它的声明和初始化,你也可以在你的类的构造函数中初始化栈:


class YourClass 
  private Stack<Double> stack;

  public YourClass() 
    this.stack = new Stack<>();
  


【讨论】:

以上是关于你如何在java中将堆栈初始化为空?的主要内容,如果未能解决你的问题,请参考以下文章

为什么我必须在堆栈中将顶部初始化为-1两次?

在Python中将列表初始化为已知数量的元素[重复]

在Java中将多个变量初始化为相同的值

处于释放模式时,C ++向量未初始化为空

在Java中将多个变量初始化为相同的值

如何在c ++中的类构造函数中将整个数组初始化为单个元素