繁体   English   中英

是否可以在 Processing 3 中实现堆栈?

[英]Is it possible to implement a Stack in Processing 3?

import java.util.Stack;
Stack stack = new Stack();

void setup(){
    stack.push('1');
    println(stack);
}

IDE 说:“函数 push(String) 不存在”

你的代码工作正常。

import java.util.Stack;
Stack stack = new Stack();
stack.push("1");
println(stack);

请注意,我已将'1'更改为"1" ,我猜这就是您实际在做什么。

这为我正确打印出[1]

您可能想要添加泛型:

import java.util.Stack;
Stack<String> stack = new Stack<String>();
stack.push("1");
println(stack);

这将保证您只将String值添加到您的Stack 但如果没有这个,它也应该可以正常工作。

我的猜测是你刚刚忘记了stack. 部分:

push("1");

这将产生您提到的错误。 通过添加stack.解决此问题stack. 在函数前面。

将来,请确保您在问题中发布的代码实际上是您正在运行的代码。

java中的"string"是双引号"string"而不是'string'
此外,我发现对我来说,以下代码是有效的[在这里确认图片]

    Stack stack = new Stack();
    stack.push('1');
    System.out.println(stack.pop());

所以,这可能是泛型的原因。
如您所知java.util.Stack是通用框架。
所以会建议你使用Stack<String> stack = new Stack<>();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM