⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 exprtokenslist.java

📁 《JSP时尚编程百例》一例源代码81-100
💻 JAVA
字号:

  package cal ;
  
  import java.lang.* ;
  import java.util.* ;
  
  public class ExprTokensList {
    Vector tokensList ;
    Vector improperTokens ;

    public ExprTokensList() {
      tokensList=new Vector() ;
      improperTokens=new Vector() ;
    }

    public String getErrorMessage() {
      if( improperTokens.size()==0 )
        return "没有发现任何错误!" ;
      else {
        String msg="输入有错!: " ;
        for( Enumeration e=improperTokens.elements() ; e.hasMoreElements() ; )
          msg+=( "\""+(String)e.nextElement()+"\" " ) ;
        return  msg ;
      }
    }
    
    public Object getElement() {
      if( tokensList.size()==0 )
        return null ;
      else {
        Object element=tokensList.firstElement() ;
        tokensList.removeElementAt( 0 ) ;
        return element ;
      }	
    }

    public boolean isParsingOk() {
      if( improperTokens.size()==0 )
        return true ;
      else
        return false ;	
    }

    public void setExpression( String expr ) {
      StringTokenizer tokenizer=new StringTokenizer( expr, " +-*/", true ) ;
      while( tokenizer.hasMoreTokens() ) {
      	String token=tokenizer.nextToken() ;

      	if( token.equals( " " ) )
      	  continue ;

      	if( token.equals( "+" ) || token.equals( "-" ) || token.equals( "*" ) || token.equals( "/" ) )
      	  tokensList.addElement( token ) ;
      	else {
      	  try {
      	    tokensList.addElement( new Double( token ) ) ;
      	  }
      	  catch( NumberFormatException ex ) {
      	    improperTokens.addElement( token ) ;
      	  }
      	}
      }
    }
  } 
    
    
  

⌨️ 快捷键说明

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