确定字符串是否是Java中的整数我试图确定字符串数组中的特定项是否为整数。我是.split(" ")'ing中的内嵌表达式String窗体,然后尝试将结果数组拆分为两个数组;一个用于整数,一个用于运算符,同时舍弃括号和其他杂项。实现这一目标的最佳方法是什么?我想我也许能找到一个Integer.isInteger(String arg)方法之类的,但没有这样的运气。
3 回答
慕后森
TA贡献1802条经验 获得超5个赞
public static boolean isInteger(String s) {
return isInteger(s,10);}public static boolean isInteger(String s, int radix) {
if(s.isEmpty()) return false;
for(int i = 0; i < s.length(); i++) {
if(i == 0 && s.charAt(i) == '-') {
if(s.length() == 1) return false;
else continue;
}
if(Character.digit(s.charAt(i),radix) < 0) return false;
}
return true;}public static boolean isInteger(String s, int radix) {
Scanner sc = new Scanner(s.trim());
if(!sc.hasNextInt(radix)) return false;
// we know it starts with a valid int, now make sure
// there's nothing left!
sc.nextInt(radix);
return !sc.hasNext();}public static boolean isInteger(String s) {
try {
Integer.parseInt(s);
} catch(NumberFormatException e) {
return false;
} catch(NullPointerException e) {
return false;
}
// only got here if we didn't return false
return true;}添加回答
举报
0/150
提交
取消
