exprtokenslist.java
来自「《JSP时尚编程百例》一例源代码81-100」· Java 代码 · 共 67 行
JAVA
67 行
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 + =
减小字号Ctrl + -
显示快捷键?