gpt4 book ai didi

java - 为什么 Java Stack.push 会给出一个返回类型,即使我不需要它?

转载 作者:行者123 更新时间:2023-11-30 09:08:04 26 4
gpt4 key购买 nike

我想知道为什么Stack中的push方法有返回类型?我检查了 Oracles 文档,但只提到了返回类型。谁能告诉我为什么需要返回类型?

最佳答案

不需要使用返回类型。您可以简单地忽略它,这是最有可能的用例。但是,如果您想要创建被推送的对象、将其推送到堆栈并维护对它的引用,它可能会很有用,所有这些都只需一行代码。

MyObject newOne = stk.push(new MyOjbect());

Stack 的顶部现在包含对新创建的 MyObject 实例的引用,但您在推送它的范围内也有对它的引用,以防您需要它执行进一步的操作而不将其从堆栈中删除.

如果您非常关心开销,您可以简单地使用 addElement() 方法,它以更少的方法开销和无返回值完成完全相同的事情。如果您查看与 Java SDK 捆绑在一起的 Java 源代码,您会发现 push() 正在调用 addElement():

public E push(E item) {
addElement(item);

return item;
}

关于java - 为什么 Java Stack.push 会给出一个返回类型,即使我不需要它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23786792/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com