reservedwordtable.java

来自「我用java写的词法分析器」· Java 代码 · 共 46 行

JAVA
46
字号
package 编译技术;

import java.util.*;

public class ReservedWordTable
{
  private Hashtable reservedWordTable = new Hashtable(19);
  public ReservedWordTable()
  {
    reservedWordTable.put("1", "begin");
    reservedWordTable.put("2", "if");
    reservedWordTable.put("3", "then");
    reservedWordTable.put("4", "while");
    reservedWordTable.put("5", "do");
    reservedWordTable.put("6", "end");
    try
    {
      jbInit();
    }
    catch (Exception ex)
    {
      ex.printStackTrace();
    }
  }

  //如果不是保留字,则返回为-1
  public int getKeyWordType(String classWord)
  {
    int KEY;
    for (Enumeration e = this.reservedWordTable.keys(); e.hasMoreElements(); )
    {
      KEY = Integer.parseInt( (String) e.nextElement());
      if ( ( (String)this.reservedWordTable.get(Integer.toString(KEY))).
          equalsIgnoreCase(classWord))
      {
        return KEY;
      }
    }
    return -1;
  }

  private void jbInit() throws Exception
  {
  }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?