编译原理(词法分析) Java 实现
编译原理(词法分析) Java 实现
1. 项目目录
2. 需要解释的源代码
PROGRAM SOURCE;
/*定义变量*/
VAR X, Y, Z:INTEGER;
A:INTEGER;
B:INTEGER;
//程序开始
BEGIN
X := 5;
A:= 0;
WHILE X > 0 DO
A:= A + X;
A := X - 1;
IF A = 10 THEN
B := A * 2;
END
3. 程序代码
import java.io.*;
import java.util.ArrayList;
class SortCode{
String word;//单词
Integer encode;//编码
String symbol;//注记符
public SortCode(String word, Integer encode, String symbol){
this.word = word;
this.encode = encode;
this.symbol = symbol;
}
}
class WordItem{
String key;//关键词
Integer encode;//编码
Integer line;//行号
public WordItem(String key, Integer encode, Integer line){
this.key = key;
this.encode = encode;
this.line = line;
}
@Override
public String toString() {
return "WordItem{" +
"key='" + key + '\'' +
", encode=" + encode +
", line=" + line +
'}';
}
}
public class ParseWords {