Bob*_*y S 11 java parsing integer
给定一个整数,如何使用Java检查它是否包含0?
1 = Good 2 = Good ... 9 = Good 10 = BAD! 101 = BAD! 1026 = BAD! 1111 = Good
如何才能做到这一点?
Jon*_*eet 38
你的意思是如果十进制表示包含0?绝对最简单的方法是:
if (String.valueOf(x).contains("0"))
Run Code Online (Sandbox Code Playgroud)
不要忘记一个数字本身并不"含有0"(当然除了零) - 它取决于基数.因此十进制中的"10"是十六进制中的"A",十六进制中的"10"是十进制中的"16"......在这两种情况下结果都会改变.
可能有更有效的方法来测试整数的十进制表示中是否存在零,但它们可能比上面的表达式更多地涉及.
Bil*_*ard 22
如果由于某种原因您不喜欢转换为String的解决方案,您可以尝试:
boolean containsZero(int num) {
if(num == 0)
return true;
if(num < 0)
num = -num;
while(num > 0) {
if(num % 10 == 0)
return true;
num /= 10;
}
return false;
}
Run Code Online (Sandbox Code Playgroud)
这也假设num是基数10.
编辑:添加条件来处理负数和0本身.
| 归档时间: |
|
| 查看次数: |
30171 次 |
| 最近记录: |