Java 令牌上的语法错误

Java 令牌上的语法错误,java,dictionary,syntax,hashmap,syntax-error,Java,Dictionary,Syntax,Hashmap,Syntax Error,我遇到了一个我不理解的错误: 这条线上有多个标记 -令牌上的语法错误,放置错误 建造(s) -令牌语法错误,请删除这些令牌 以下是我的类代码,错误发生在第8行(标记): import java.util.*; 公共类字符串计算器{ 字符串运算符_数组[]={“+”,“-”,“/”,“*”,“(“,”)}; Queue outputQueue=新建LinkedList(); 堆栈运算符堆栈=新堆栈(); Hashtable precentece=新的Hashtable(); priority.pu

我遇到了一个我不理解的错误:

这条线上有多个标记 -令牌上的语法错误,放置错误 建造(s) -令牌语法错误,请删除这些令牌

以下是我的类代码,错误发生在第8行(标记):

import java.util.*;
公共类字符串计算器{
字符串运算符_数组[]={“+”,“-”,“/”,“*”,“(“,”)};
Queue outputQueue=新建LinkedList();
堆栈运算符堆栈=新堆栈();
Hashtable precentece=新的Hashtable();

priority.put(“+”,2);语句
priority.put(“+”,2);
必须在方法或块中

例如,您可以将其放置在构造函数中

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

与您遇到的问题无关,类需要以大写字母开头,根据

,语句应该放在构造函数/方法/块中,否则会发生编译时错误

precedence.put("+", 2); <=========== This is where the error occurs
priority.put(“+”,2);
priority.put(“+”,2);

上面一行的位置不正确。您应该在构造函数中初始化哈希表。

太好了。非常感谢:)您应该在构造函数中初始化哈希表。
precedence.put("+", 2); <=========== This is where the error occurs
precedence.put("+", 2); <=========== This is where the error occurs
precedence.put("+", 2);