JavaSE中的循环,for循环,while循环与do-while循环

一、总体介绍

在JavaSE中,有三种常用的循环结构,分别是for循环、while循环和do-while循环。

我们先来总体简单介绍一下三种循环:

1. for循环:for循环是最常用的循环结构之一,通常用于循环遍历数组或集合中的元素;

2.while循环:while循环在循环开始之前判断条件是否成立,只有条件为true时才会执行循环体;

3.do-while循环:do-while循环与while循环类似,唯一的区别是do-while循环会至少执行一次循环体,然后再根据条件判断是否继续循环;

需要注意的是,for与while循环是执行0~N次,而do-while循环是执行1~N次。

其次分别详细介绍一下这三种循环体。

二、for循环

for循环,又称计数循环,在某个范围内,重复执行循环体内的代码。

循环要素:1,初始值;2,终止条件;3,步长;

for循环语句:

for(    表达式1(初始值)    ;    表达式2(终止条件)     ;    表达式3(步长)    ){

循环体;

}

详细执行步骤:(1) 先执行表达式1,且只执行一次;

(2) 再执行表达式2,判断是否符合;

(3) 符合表达式2,则执行循环体,并在执行完循环体后执行表达式3,再跳回(2)直到不符合表达式2;

(4)不符合表达式2,跳出循环,循环结束;

注意:1. 表达式1,做初始化工作,可放在for语句前;

2. 表达式2只能是布尔型,只有符合表达式2,才能执行循环体;

3. 表达式3表示步长,比如 i++ 表示步长为1,i += 2 表示步长为2; 

4. for循环执行次数可以执行0次,也可执行无数次;

for循环的例子:

public class For_01 {
    public static void main(String []args){
    
        for (int i = 0; i < 10 ; i++) {
            System.out.println(i);
        }
        
        int j = 0;//初始值可写在外面
        for(; j<5 ; j++){
            System.out.println(j);
        }
        System.out.println(j);
        //步长为2
        for(int k = 0 ; k<5 ; k += 2){
            System.out.println(k);
        }
    }

}

三、while循环

while循环,又称真假循环,当条件为真时,就执行循环体。

循环要素:1,布尔类型表达式;

while循环语句:

while(    布尔类型表达式     ){

循环体;

}

详细执行步骤:(1) 先判断布尔类型是否为真,也就是是否符合条件,符合执行(2),否则执行(3);

(2) 执行一次循环体,执行(1);

(3) 跳出循环,循环结束;

注意:1. while循环与for循环的执行次数类似,能执行0次,也可执行无数次;

while循环的例子:

public class While_01 {
    public static void main(String[] args) {
        int i = 0;
        while(i<5){
            System.out.println(i);
            i++;
        }
    }

}

四、do-while循环

do-while循环,与while循环类似,当条件为真时,就执行循环体。

do-while循环语句:

do{

循环体;

}while(    布尔类型表达式     );

详细执行步骤:(1)先执行一次循环体,再判断布尔类型是否为真(是否符合条件),符合执行(2),否则执行(3);

(2) 执行一次循环体,执行(1);

(3) 跳出循环,循环结束;

注意:1. do-while执行次数与另外俩个不同,do-while循环体最少执行一次,也就是说循环体必然会执行一次;

do-while循环的例子:

public class While_02 {
    public static void main(String[] args) {
    int i = 110;
    do{
        System.out.println(i);
    }while(i<10);
    }

}

五、嵌套循环

顾名思义,嵌套循环就是在循环内部还有循环。

注意:1.外层循环执行一次,内层循环执行一轮;

2.在二维循环中,即一个循环内部只有一个循环,外层循环模拟的是列,内层循环模拟的是行,二位循环可以模拟二维平面表;

嵌套循环的例子:

public class For_02 {
    public static void main(String[] args) {
        //外层循环1次,内层循环6次(一轮),总共30次循环
        for (int i = 0; i < 5; i++) {
            for (int j = 0; j < 6; j++) {
                System.out.print( 0 + " ");
                
            }
            System.out.println();
        }
        
    }

}

六、循环的一些题目

1. 计算1~100的奇数和。

解:

public class For_04 {
    public static void main(String[] args) {
        //1~100的奇数和
        int sum = 0;
        for(int i = 1; i<= 100;i += 2){
            sum += i;
        }
        System.out.println("1~100的奇数和为: " + sum);
    }

}

2. 打印 9×9乘法表。

解:

public class For_03 {
    public static void main(String[] args) {
        for(int i = 1 ; i < 10; i++){
            for(int j = 1 ; j <= i; j++){
                System.out.print(j + "×" + i + "=" + (i*j) + " ");
            }
            System.out.println();
        }
    }

}

3. 鸡兔同笼问题,一共35个头,94只脚,问兔子和鸡各多少只。

解:(两种方法,第一种为穷举法,循环次数为100*100次;第二种的循环次数减半,只有100次)

public class For_06 {
    //鸡兔同笼,35头,94脚
    //i+j=35
    //2*i + 4*j = 94        
    public static void main(String[] args) {
        for (int i = 0; i < 100; i++) {
            for (int j = 0; j < 100; j++) {
                if((i + j == 35) && (2 * i + 4 * j ==94)){
                    System.out.println("鸡:" + i + " 兔:" + j);
                }
                
            }
            
        }
        
        for (int i = 0; i < 100; i++) {
            int j = 35 - i;
                if(2 * i + 4 * j ==94){
                    System.out.println("鸡:" + i + " 兔:" + j);
                }
            
        }
    }

}

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值