構造函數似乎沒有將值放入表達式變量中。如果是這樣,它不會正確傳遞給標記器。當我調試它似乎只是傳遞構造函數內的行。我理解我寫的代碼的方式是在main()中調用的構造函數將字符串存儲在解析器中的表達式變量中,然後將表達式傳遞給Tokenizer(),但表達式變量在傳遞時爲null。在傳遞給Tokenizer()之前,我需要將字符串存儲在表達式變量中。我的構造函數不工作,任何人都可以幫我找出問題嗎?
public class Parser {
String expression;
Tokenizer tokenizer = new Tokenizer(expression);
Parser(String e) {
this.expression = e;
}
}
public static void main(String[] args) {
// TODO code application logic here
Parser parser = new Parser("3+5");
}
不要害怕將表達式傳遞給標記器,字符串是不可變的:-) – porfiriopartida