在 Java 中打印堆栈值
在 Java 中,我想打印 Stack 的内容.toString()
方法将它们打印在用逗号分隔的方括号中:[foo, bar, baz]
.
In Java, I want to print the contents of a Stack. The toString()
method prints them encased in square brackets delimited by commas: [foo, bar, baz]
.
如何摆脱它们并只打印变量?
How do I get rid of them and print the variables only?
到目前为止我的代码:
Stack myStack = new Stack ();
for(int j=0; j<arrayForVar.length; j++) {
if(arrayForVar[j][1] != null) {
System.out.printf("%s
", arrayForVar[j][1] + "
");
myStack.push(arrayForVar[j][1]);
}
}
System.out.printf("%s
", myStack.toString());
这个答案对我有用:
在 Stack 上使用 toString
方法,并使用 replaceAll
方法将方括号的所有实例替换为空白字符串.像这样:
Use the toString
method on the Stack, and use replaceAll
method to replace all instances of square brackets with blankstring. Like this:
System.out.print(
myStack.toString().replaceAll("\[", "").replaceAll("]", ""));
推荐答案
有一个解决方法.
你可以把它转换成一个数组,然后用 Arrays.toString(Object[])
:
You could convert it to an array and then print that out with Arrays.toString(Object[])
:
System.out.println(Arrays.toString(myStack.toArray()));
相关文章