与令牌语法相关的未知错误

时间:2013-12-20 10:26:50

标签: java dictionary map syntax-error

我无法弄清楚Java中的以下代码有什么问题:

import java.util.*;

public class stringCalculator {
    String operator_array[] = {"+", "-", "/", "*", "(", ")"};
    Queue<Integer> outputQueue = new LinkedList<Integer>();
    Stack <Object> operatorStack = new Stack<Object>();
    Hashtable<String, String> operatorPrecedence = new Hashtable<String, String>();
    operatorPrecedence.put("+", "2");

我收到以下错误:

令牌上的语法错误,删除这些令牌,这与以下行有关:

operatorPrecedence.put("+", "2");

感谢您的帮助

1 个答案:

答案 0 :(得分:1)

您不能将语句直接放在类中。

创建一个方法或构造函数,并将调用放在put那里。

public stringCalculator() {
    operatorPrecedence.put("+", "2");
}

此外,最好为班级使用大写名称,例如StringCalculator