为了账号安全,请及时绑定邮箱和手机立即绑定

代码无限循环问题

我的代码这样写有什么问题,为啥会无线循环。。。

正在回答

3 回答

for里面用了while循环啊,且while里面的条件是小于100大0 就一直循环输出。用if

int j=0;

for(int i=scores.length-1;i>=0&&j<3;i--){

         if(scores[i]>0&&scores[i]<100){

              System.out.println(scores[i]);

              j++; 

          }

       }

0 回复 有任何疑惑可以回复我~
#1

奇谋007 提问者

确实按照你说的修改了两点就好了,一、把j的赋值提出外面来,并且j的循环条件是小于3,二、把while改成if 我还是有点不明白,为什么把j的赋值放在for语句中的话,就是我代码里面这么写的会报错? 为什么不能用while,且会造成死循环,我看了一下while语句的意思是当while后面的条件成立时,执行循环操作,这个意思不就是和if一个意思么?
2016-05-11 回复 有任何疑惑可以回复我~
#2

洋葱沙拉酱 回复 奇谋007 提问者

j不修改也可以的 ,重点在while,虽然你说的条件成立就执行后面的操作是没错,但是while是循环呀 只要条件成立就一直循环下去 造成死循环,而if 只判断一次条件且只执行一次操作。 而你这里的目的是要判断这个数值是否符合成绩要求
2016-05-12 回复 有任何疑惑可以回复我~
#3

奇谋007 提问者

非常感谢!
2016-05-12 回复 有任何疑惑可以回复我~

就是导入相应的包,以便程序可以调用包中的类,就是在java文件顶部使用import关键字导入的那些

0 回复 有任何疑惑可以回复我~

for(int i = scores.length - i;i>=0;i--)

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

代码无限循环问题

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信