Java 使用for循环时的除法问题
出于某种原因,每当我尝试运行此代码时,Java 使用for循环时的除法问题,java,for-loop,division,Java,For Loop,Division,出于某种原因,每当我尝试运行此代码时,speed始终保持在0,它将I计数到x,然后speed突然变为1.0speed应该是x的小数点,具体取决于for循环的运行次数。我不明白为什么会发生这种情况,如果能澄清一下,我将不胜感激 double speed; int x = 200; for(int i = 0; i <= x; i++){ speed = i/x; System.out.println("Speed- " + speed); System.
speed
始终保持在0
,它将I
计数到x
,然后speed
突然变为1.0
speed
应该是x
的小数点,具体取决于for循环的运行次数。我不明白为什么会发生这种情况,如果能澄清一下,我将不胜感激
double speed;
int x = 200;
for(int i = 0; i <= x; i++){
speed = i/x;
System.out.println("Speed- " + speed);
System.out.println("Ticks- " + i);
}
for(int i = x; i >= 0; i--){
speed = i/x;
System.out.println("Speed- " + speed);
System.out.println("Ticks- " + i);
}
双速;
int x=200;
对于(int i=0;i=0;i--){
速度=i/x;
系统输出打印项次(“速度-”+速度);
System.out.println(“记号-”+i);
}
试试这个:
double x = 200; // use a double instead of an int
问题出在哪里?您将两个int
s相除,结果是另一个int
。通过将两个操作数中的一个转换为双精度,除法现在将产生一个带小数的数字。尝试以下操作:
double x = 200; // use a double instead of an int
问题出在哪里?您将两个int
s相除,结果是另一个int
。通过将两个操作数中的一个转换为双精度,除法现在将产生一个带小数的数字。尝试以下操作:
double x = 200; // use a double instead of an int
问题出在哪里?您将两个int
s相除,结果是另一个int
。通过将两个操作数中的一个转换为双精度,除法现在将产生一个带小数的数字。尝试以下操作:
double x = 200; // use a double instead of an int
问题出在哪里?您将两个
int
s相除,结果是另一个int
。通过将两个操作数中的一个转换为双精度,除法现在将产生一个带小数的数字。x必须是浮点变量才能得到正确的结果。如果i和x都是整数,那么速度也是整数,这就是为什么只有0和1必须是浮点变量才能得到正确的结果。如果i和x都是整数,那么速度也是整数,这就是为什么只有0和1必须是浮点变量才能得到正确的结果。如果i和x都是整数,那么速度也是整数,这就是为什么只有0和1必须是浮点变量才能得到正确的结果。如果i和x都是整数,那么速度也是整数,这就是为什么只能得到0和1的原因。请阅读“整数除法”。请阅读“整数除法”。请阅读“整数除法”。请阅读“整数除法”。请阅读“整数除法”。请阅读“整数除法”。