For循环
语法:
package com.zhou.struct;
/*
1,最先执行初始化步骤,可以声明一种类型,但可初始化一个或多个循环控制变量,也可以是空语句
2,检测布尔表达式的值,若为true,循环体被执行,若为false,循环体终止,开始执行循环体后面的语句
3、再次检测布尔表达式,循环执行上面的过程
*/
public class ForDemo01 {
public static void main(String[] args) {
int i=1;
while(i<=100){
System.out.println(i);
i++;
}
System.out.println("while 循环结束");
//初始化//判断//迭代
for(int j=1;j<=100;j++){ //快捷键:100.for
System.out.println(j);
}
for(; ; ){
//死循环
}
}
}
练习题
package com.zhou.struct;
//计算0-100之间所有“奇数”和“偶数”的和
public class ForDemo02 {
public static void main(String[] args) {
int sum1 = 0;
int sum2 = 0;
for (int i = 1; i <= 100; i++) {
if (i % 2 == 0) {
sum1 += i;
} else {
sum2 += i;
}
}
System.out.println("偶数和等于 : "+sum1);
System.out.println("奇数数和等于 : "+sum2);
}
}
package com.zhou.struct;
//用while或for循环输出1-1000之间能被5整除的数,并且每行输出3个
public class ForDemo03 {
public static void main(String[] args) {
for (int i = 1,j=0; i <= 1000; i++) {
if(i%5==0){
System.out.print(i+"\t");
j++;
if(j%3==0){
System.out.println(); //System.out.print("\n"); 换行
}
//if(i%(5*3)==0) 也可在输出三个后换行
}
//println输出后换行
//print输出后不换行
}
}
}
/*
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
*/
package com.zhou.struct;
//打印九九乘法表
public class ForDemo04 {
public static void main(String[] args) {
//1,先打印第一列
//2,把固定的在用一个循环包起来
//3,去掉重复项,j<=i
for (int i = 1; i <= 9; i++) {
for(int j=1;j<=i;j++){
System.out.print(j+"*"+i+"="+(i*j)+"\t");
}
System.out.println();
}
}
}
增强for循环
- Java5引入了一种主要用于数组或集合的增强型for循环
- 语法
- for(声明语句:表达式){ //代码句子 }
- 声明语句:声明新的局部变量,该变量的类型必须和数组元素类型匹配,其作用域限定在循环语句块,其值与此时数组元素的值相等
- 表达式是要访问的数组名,或是返回值为数组的方法
package com.zhou.struct;
public class ForDemo05 {
public static void main(String[] args) {
int[] numbers={10,20,30,40,50}; //定义一个数组
//增强for循环 遍历数组元素
for(int x:numbers){
System.out.println(x);
}
System.out.println("*******************************");
//等价于增强for循环
for(int i=0;i<5;i++){
System.out.println(numbers[i]);
}
}
}