今天java练习的时候,遇到了一道有趣的题目,加深了我对cotinue
的理解,因此我写个笔记,记录一下continue
的特殊用法java
这里我使用个例子来简单说明一下:数组
for(int i=0;i<5;i++){ if(i==2){ continue; } System.out.print(i); }
上述代码 最终结果是为0134
咱们能够理解为忽略掉了i=2
的这种状况dom
问题来了,若是咱们想使用continue
但不想把那种状况给忽略掉,怎么办呢?code
很简单,其实,把在continue
语句前加上i--
便可随机数
for(int i=0;i<5;i++){ if(i==2){ i--; continue; } System.out.print(i); }
下面的题目则是我作的练习题循环
题目要求:在1-10范围内,循环生成7个数,而且不重复遍历
Random random = new Random(); int[] a = new int[7]; for (int i = 0; i < a.length; i++) { int num = random.nextInt(10)+1; boolean flag = false;//是否重复 //遍历以前数组,若是有重复就置flag为true for (int j = 0; j <a.length; j++) { if (num==a[j]){ flag=true;//存在了重复的数字 break; } } if (flag){ //由于使用continue语句的时候,会忽略当前的i,从而执行i++, // 因此咱们在执行continue语句以前,让i的值减1, // 这样就能使得下次循环仍是停留在本来的i i--; continue;//存在重复了的数字,从新循环,获取随机数 }else{ a[i] =num;//不存在重复,则赋值 } } for (int i = 0; i < a.length; i++) { System.out.print(a[i]+" "); }