今天遇到这样一个问题:在for循环和while循环中如何更好的使用continue语句。话不多说,上代码。
package study;
/**
*
* @author 黑大帅
* @date 2020.1.17
* 实现功能:求10个随机整数中能被5整除的个数
*/
public class Study {
public static void main(String args[]) {
//for循环
int count1=0,num1=0;
for(int i=1;i<=10;i++) {
num1 =(int)(Math.random()*100);
if(num1%5==0) {
count1++;
System.out.println("能被数字5整除的整数为:"+num1);
continue;
}else {
System.out.println("整数"+num1+"不能被5整除");
}
}
System.out.println("能被数字5整除的整数个数为:"+count1+"个");
//while循环
int count2 = 0,j=1;
int num2 =0;
while(j<=10) {
num2 = (int)(Math.random()*10);
if(num2%5==0) {
count2++;
System.out.println("能被数字5整除的整数为:"+num2);
}else {
System.out.println("整数"+num2+"不能被5整除");
}
j++;
}
System.out.println("能被数字5整除的整数个数为:"+count2+"个");
}
}
问题分析:起初我在for循环中使用continue语句的时候没有出现问题,但在while循环中使用continue语句就出现了乱序,这是为什么呢?明明我设置的是i=1开始,到i<=10结束,控制台应该只输出10个数啊,为啥多了几个?怀着好奇的心态,我仔细去看了看代码,结果解释如下:
在for循环中,使用continue语句会跳转到i++,而再while循环中使用continue语句会跳过i++,这就导致了控制台出现次数乱的原因,重点还是要掌握continue语句的用法。下来抽时间多做几个这样的案例,加深印象,以后在项目中能够更快上手,正所谓熟能生巧嘛。