This question already has answers here:
Int division: Why is the result of 1/3 == 0?
(15个答案)
去年关闭。
为什么此程序的输出是
当您将3/2相除时,它等于1.5,我认为Java只采用了整数的第一个值。这是怎么回事?
(15个答案)
去年关闭。
为什么此程序的输出是
1 1 2 2 3 3
而不是1 1 2 2 3 1
class Scratch {
public static void main(String[] args) {
int[] a = { 1, 2, 3, 4, 5, 3 };
for (int i = 0; i < 6; i++)
System.out.print(a[i / 2] + " ");
}
}
当您将3/2相除时,它等于1.5,我认为Java只采用了整数的第一个值。这是怎么回事?
最佳答案
您正在划分索引而不是值。为了得到您想要的结果,您应该在方括号之外进行除法:
System.out.print(a[i] / 2 + " ");
// Here --------------^
关于java - 为什么输出1 1 2 2 3 3不是1 1 2 2 3 1整数除法[duplicate],我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49905452/
10-13 05:13