为什么我的System.out.println没有执行?

时间:2015-03-07 18:25:10

标签: java

我无法弄清楚为什么这不会执行。有任何想法吗?我的语法错了或者我没有正确初始化计数吗?

以下是代码:

int product = 0, count=0;
while (product < 2500){
    product *= 5;
    count++;
}
    System.out.println(product);

4 个答案:

答案 0 :(得分:4)

product = 0
然后你将它乘以5

product *= 5;

0 times 5 is still 0所以

while (product < 2500){

永远是真的。考虑设置

product = 1

最初使其长度足以退出while循环并在某个时刻打印。

答案 1 :(得分:1)

product = 0;

//您正在使用值= 0初始化您的产品变量;

然后你继续将乘积乘以5,这将只为零,所以虽然循环不会很困难。

因此初始化产品具有一些正值。

答案 2 :(得分:0)

这是无限循环

int product = 0, count=0;
while (product < 2500){
    product = 0 * 5;   // product is always 0;
}

答案 3 :(得分:0)

上面的代码看起来有一个逻辑错误。它永远不会停止,因为产品值永远不会大于0,因此它永远不会退出循环。

如果您想在每次成倍增加时打印产品,请在循环中添加产品打印输出行:

`while (product < 2500){
  product *= 5;
  count+= 1;
  System.out.println(product);
 }`

请记住,上面的代码永远不会打印任何零,因为产品永远不会被更改,因为X * 0 = 0.希望这是有意义的!快乐的编码!