当前位置: 首页 > 知识库问答 >
问题:

类栈push方法返回参数的实用应用

孙阳舒
2023-03-14

1)类栈:公共E推(E项)

类堆栈-它的push方法只返回它的参数(不像较新的Deque,其相应的push方法现在是void):

public E push(E item)

您能提供任何有用的使用此特性的实际生活/生产示例吗?

我知道堆栈是遗留的,使用Deque实现代替。

但这一功能是如何在传统应用程序中使用的呢?我想它可以用于调用链接,但想不出一个实际的例子。

共有1个答案

隗和裕
2023-03-14

1)是。请考虑此类:

class Foo
{
    public void activate() { }
}

有时会写更简洁:

Stack<Foo> s = new Stack<>();
s.push(new Foo()).activate();

而不是:

Stack<Foo> s = new Stack<>();
Foo f = new Foo();
f.activate();
s.push(f);

你的假设是不正确的。Stack扩展了Vector,因此继承了Vector的所有公共方法,其中之一是elementat(int)。因此如果需要,您可以使用该索引。

 类似资料:
  • 本文向大家介绍iOS push侧滑返回功能实现方法,包括了iOS push侧滑返回功能实现方法的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了iOS push侧滑返回功能的具体代码,供大家参考,具体内容如下 开启iOS自带的push的侧滑返回功能(只有左侧边缘地带响应侧滑返回,并不是全局响应): 为防止导航控制器在根视图时触发手势 这样 在根视图侧滑返回操作,然后出发push会没有效

  • 问题内容: 由于发送给Java方法的参数指向调用方方法中的原始数据结构,因此它的设计者是否打算像其他语言(如C)那样使用它们来返回多个值? 还是这是对Java通用属性(变量是指针)的危险滥用? 问题答案: 很久以前,我与Ken Arnold(Java团队的一名成员)进行了一次对话,大概是在1996年的第一次Java One会议上。他说他们正在考虑添加多个返回值,以便您可以写类似: 当时和现在的推荐

  • 问题内容: 这就是我想要做的。使用反射,我想获取所有方法及其返回类型(非泛型)。我一直在这样做。但是,当我遇到返回类型未知的方法时,我遇到了限制。 我如何知道方法的返回类型是否通用?我没有奢求在运行时拥有对象。我正在尝试使用Google 或使用抽象类来获取类型信息。我想关联到对象的方法。 有人认为Java不保留通用信息。在这种情况下,为什么第一次强制转换有效而第二次强制转换无效。 任何帮助表示赞赏

  • 我正在努力学习Spring Boot微服务。现在,如果我的任何呼叫服务关闭,我将尝试使用resilience4j实现断路器。 如果我将回退方法返回类型设置为实际的方法返回类型,那么它可以正常工作,但是我不能显示我的服务关闭的信息。因为它随后在对象的字段中发送响应null。但是如果我在实际方法上将返回类型更改为String,并且在回退中,那么我将无法以JSON的形式获取对象值。 是否有可能返回字符串

  • 问题内容: 我为使用堆栈的程序创建的2个类有问题。我得到的第一个问题是,当我尝试运行程序时,出现运行时错误。 这很难问,因为它做了很多事情。它要求用户输入以将数字添加到堆栈中,并检查堆栈是满还是空。我也可能需要帮助来复制阵列。 线程“主”中的异常java.lang.ArrayIndexOutOfBoundsException:在Lab15.main(Lab15.java:38)处在IntegerS

  • 我想知道为什么这是一个有效的覆盖: 鉴于这不是: 根据JLS§8.4.8.1,必须是子签名: C类中声明或继承的实例方法mC重写C类中声明的另一个方法mA,如果以下所有为真: ... mC的签名是mA签名的子签名(§8.4.2)。 ... 子签名在JLS§8.4.2中定义: 两个方法或构造函数,M和N,如果具有相同的名称、相同的类型参数(如果有的话),则具有相同的签名(§8.4.4),并且,在将N