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爲特定的標記設置一個數字值,但由於它們是字符串,因此無法使用「< =」,是否需要使用String.greaterThan()[虛構]類型的方法?比較字符串值,綴與postfix
呃,'Integer.valueOf(「+」,1);'是怎麼回事去炸掉。 「+」不是一個數字。 – azurefrog