【发布时间】:2016-11-10 03:36:16
【问题描述】:
说明: 给定一个字符串,判断它是否为整数。例如 字符串“123”是整数,但字符串“hello”不是。
如果字符串中的所有字符都是数字,则为整数。
如果是整数则返回 true,否则返回 false。
提示:有一个方法 Character.isDigit() 将 char 作为参数 并返回一个布尔值。
到目前为止我所拥有的:
public boolean isInteger(String str) {
if(Character.isDigit(str.charAt(0)) == 0) {
return false;
}
for (int i = 0; i < str.length(); i++) {
if(Character.isDigit(str.charAt(i))) {
break;
} else {
return false;
}
}
return true;
}
我在返回字符串“101”的布尔值时遇到问题,根本没有字符串(“”)
【问题讨论】:
-
if(Character.isDigit(str.charAt(0)) == 0) { return false; }这种情况很奇怪。为什么要评估boolean和int? -
另外,您应该删除
break;,否定第一个条件,然后将return false;放入其中。 -
对于“if(Character.isDigit(str.charAt(0)) == 0) { return false; }”,如果没有放入细绳。此外,我尝试否定使我的“101”布尔字符串正确的第一个条件,但它最终使所有其他返回值都不正确。