循环结构2
for循环详解
public class ForDemo01 { public static void main(String[] args) { int a=1;//初始化条件 while (a<=100){//条件判断 System.out.println(a);//循环体 a+=2;//迭代 } System.out.println("while循环结束!"); for(int i=1;i<=100;i++){//最有效、最灵活循环结构 System.out.println(i); /*for (int i1 = 0; i1 < 100; i1++) {//快捷键100.for 回车 }*/ } System.out.println("for循环结束"); } }
public class ForDemo02 { public static void main(String[] args) { //计算0-100之间奇数偶数的和 int oddSum=0; int evenSum=0; for (int i = 0; i <= 100; i++) { if (i%2!=0){ oddSum+=i; }else{ evenSum+=i; } } System.out.println("奇数的和:"+oddSum); System.out.println("奇数的和:"+evenSum); } }
public class ForDemo03 { //while或for 循环输出1-1000之间能被5整除的数,并每行输出3个 public static void main(String[] args) { for (int i = 0; i <=10000; i++) { if (i%5==0){ System.out.print(i+"\t");//输出不换行 } if (i%(5*3)==0){//每行 System.out.println();//输出换行 //System.out.print("\n"); } } } }
public class ForDemo04 { public static void main(String[] args) { for (int j = 1; j <=9; j++) { for (int i = 1; i <=j; i++) { System.out.print(i+"*"+j+"="+(i*j)+"\t");//print不换行 } System.out.println();//j为行数 } } }
增强for循环
public class ForDemo05 { public static void main(String[] args) { int[] numbers={10,20,30,40,50,}; for (int i = 0; i < 5; i++) { System.out.println(numbers[i]); } System.out.println("============"); for (int x:numbers){//增强for 循环 System.out.println(x);//遍历数组元素 } } }
break continue goto
public class BreakDemo { public static void main(String[] args) { int i=0; while(i<100){ i++; System.out.println(i); if (i==30){ break;//跳出循环但不终止程序 } } System.out.println("123"); } }
public class ContinueDemo { public static void main(String[] args) { int i=0; while(i<100){ i++; if (i%10==0){ System.out.println(); continue;//不执行这一次循环(跳过)而break是终止全循环 } System.out.println(i); } } }
public class LabelDemo { public static void main(String[] args) { //101-150之间质数 outer:for (int i = 101; i <=150; i++) {//了解就好 for (int j=2;j<i/2;j++){ if (i%j==0){//能被2到自身一半的数整除 continue outer; } } System.out.println(i+""); } } }
流程控制练习
public class TestDemo { //打印三角形 public static void main(String[] args) { for (int i = 1; i <= 5; i++) { for(int j=5;j>=i;j--){ System.out.print(" "); } for(int j=1;j<=i;j++){ System.out.print("*"); } for(int j=1;j<i;j++){ System.out.print("*"); }//在原来基础上打印另一半 System.out.println();//5行 } } }