在没有if语句的情况下,它是一个无限循环,将0打印为一个无限数。 为什么要添加if语句,如果if一次又一次打印0和0?
for (int zz=0; ;zz++ ) { //with the if statement
if(zz==0)System.out.print(zz+"zz \n");
//System.out.print("....");
}
for (int zz=0; ;zz++ ) { //without if statement.
System.out.print(zz+"zz \n");
}
答案 0 :(得分:0)
您没有提到语言,但是变量zz
没有无限范围(任何类型的变量都没有)。因此,一旦它的计数值超过了它的最高可表示值,它(可能取决于语言以及它是否会导致某种形式的溢出)将“包装”到其最低值,这将是一个非常负的数字,因为您的变量已签名。然后它将继续递增计数,直到再次打印到0
为止。在您的代码中,它将永远永远这样做。您肯定会注意到它打印零的速度比“不使用if语句”版本打印其数字的速度慢得多吗?这是因为zz
很少保留值0
;例如每40亿次迭代一次。