我正在尝试确定字符串数组中的特定项是否为整数.
我是表单中.split(" ")'ing的中缀表达式String,然后尝试将结果数组拆分为两个数组; 一个用于整数,一个用于操作符,一个用于丢弃括号和其他杂项.实现这一目标的最佳方法是什么?
我以为我可以找到一种Integer.isInteger(String arg)方法或东西,但没有这样的运气.
我通常使用以下习惯来检查String是否可以转换为整数.
public boolean isInteger( String input ) {
try {
Integer.parseInt( input );
return true;
}
catch( Exception e ) {
return false;
}
}
Run Code Online (Sandbox Code Playgroud)
它只是我,还是看起来有点hackish?什么是更好的方式?
看看我的回答(基于CodingWithSpike的早期答案的基准),看看为什么我改变了我的立场并接受了Jonas Klemming对这个问题的回答.我认为这个原始代码将被大多数人使用,因为它实现起来更快,更易于维护,但是当提供非整数数据时,它会慢一个数量级.
我ValidationRegularExpression="[0-9]"只允许一个角色.如何允许(包括)1到7位数之间?我试过[0-9]{1-7}但它没用.