我得到一个“int cannot be dereferenced”这可能是因为它上面有 .lenght,我还能做些什么来遍历 int?
int num;
System.out.print("Enter a positive integer: ");
num = console.nextInt();
if (num > 0)
for (int i = 0; i < num.lenght; i++)
System.out.println();
最佳答案
for (int i = 0; i < num; i++)
你的 num
已经是一个数字。所以你的条件就足够了。
示例:如果用户输入 4
, for 语句将评估为
for (int i = 0; i < 4; i++)
,运行循环四次,使用 i
具有值 0, 1, 2
和 3
如果你想遍历每个数字,你需要把你的 int back to a string首先,然后 loop over each character在这个字符串中:
String numberString = Integer.toString(num);
for (int i = 0; i < numberString.length(); i++){
char c = numberString.charAt(i);
//Process char
}
如果您想迭代数字的二进制表示,请查看this问题,可能对你有帮助。
注意:虽然可能不是必需的,但我建议您使用 {}
- 将语句 block 括起来,以提高可读性并减少出现此类错误的可能性:
if (num > 0) {
for (int i = 0; i < num; i++) {
System.out.println();
}
}
关于java - 我如何遍历一个int,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35054621/