【发布时间】:2014-05-08 12:11:26
【问题描述】:
Stack<String> s = new Stack<String>();
String[] tokens = infix.split(" ");
StringBuilder output = new StringBuilder();
Integer.getInteger("+", 1);
Integer.getInteger("-", 1);
Integer.getInteger("*", 2);
Integer.getInteger("/", 2);
for (int i = 0; i < tokens.length; i++)
{
if (tokens[i].matches("[0-9]"))
{
output.append(tokens[i] + " ");
}
else if (tokens[i].equals("+") || tokens[i].equals("-") || tokens[i].equals("*") || tokens[i].equals("/"))
{
if(tokens[i] <= s.peek())
{
}
}
}
return output.toString();
我正在为后缀计算器做一个中缀,我试图说明当前令牌值是否小于或等于堆栈顶部令牌的值。我使用 Integer.valueOf 将数值设置为特定标记,但不能使用 "
【问题讨论】:
-
呃,
Integer.valueOf("+", 1);要爆炸了。 “+”不是数字。
标签: java stack calculator postfix-notation infix-notation