【发布时间】:2014-04-21 15:52:00
【问题描述】:
我正在创建一个词法分析器。在我的代码中,我可以输出符号,但是当涉及到字母和数字时,我无法设计我的代码是什么......
请在我的项目中帮助我......谢谢
package lab7;
import java.util.Scanner;
import java.util.StringTokenizer;
public class Lab7 {
public static void main(String[] args) {
String word;
char[] wordArray;
Scanner sc = new Scanner(System.in);
wordArray = word.toCharArray();
for(int x = 0; x < wordArray.length; x++) {
if(wordArray[x] == '+') {
System.out.print("ADD ");
}
else if(wordArray[x] == '-') {
System.out.print("SUBTRACT ");
}
else if(wordArray[x] == '*') {
System.out.print("MULTIPLY ");
}
else if(wordArray[x] == '/') {
System.out.print("DIVIDE ");
}
else if(wordArray[x] == '(') {
System.out.print("MATH ");
}
else if(wordArray[x] == ')') {
System.out.print("MATH ");
}
else if(wordArray[x] == '=') {
System.out.print("ASSIGN ");
}
}
}
}
【问题讨论】:
-
这个问题相当广泛。你可以再详细一点吗?您特别遇到什么问题?
-
不是一个好的问题类型?你想让我们做你的家……我是说项目?
-
请不要将 Java 中的字符串与 == 进行比较!它并不总是有效,请记住这一点!其次,更高级的看一下 Antlr 项目:antlr.org
-
@Zarathustra 有
chars 而不是Strings -
@MaxVasileusky 你是对的,我的错。
标签: java lexical-analysis