欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

5.Java基本语法-----流程控制

程序员文章站 2023-09-20 13:52:19
一、分类 顺序结构:程序从上而下依次执行 分支结构:if-else if-else、switch-case 循环结构:while循环、for循环、do-while循环、增强for循环 二、具体说明 1.分支结构 1.1if分支结构 说明 1.else结构是可选的; 2.if-else结构可以嵌套使用 ......

一、分类

顺序结构:程序从上而下依次执行

分支结构:if-else if-else、switch-case

循环结构:while循环、for循环、do-while循环、增强for循环

二、具体说明

1.分支结构

1.1if分支结构

5.Java基本语法-----流程控制

 

 

 5.Java基本语法-----流程控制

 

 

 说明

1.else结构是可选的;

2.if-else结构可以嵌套使用;

3.如果if-else结构后只有一条执行语句,则{}是可以省略的。但不建议省略,可读性差

代码1:

public class test {
    public static void main(string[] args) {
        int age = 18;
        if (age >= 18) {
            system.out.println("你已经成年了");//你已经成年了
        }
        system.out.println("恭喜你");//恭喜你
    }
}

代码2:

public class test {
    public static void main(string[] args) {
        int age = 23;
        if (age >= 18) {
            system.out.println("你已经成年了");//你已经成年了
        }else{
            system.out.println("未成年了有很多限制");
        }

        system.out.println("end");//end
    }
}

代码3:

public class test {
    public static void main(string[] args) {
        int age = 30;
        if (age < 18) {
            system.out.println("未成年");
        } else if (age < 30) {
            system.out.println("青壮年");
        } else if (age < 50) {
            system.out.println("壮年");//壮年
        }else{
            system.out.println("老年");
        }
    }
}

1.2switch-case结构

5.Java基本语法-----流程控制

 

 

 说明:

① 根据switch表达式中的值,依次匹配各个case中的常量。一旦匹配成功,则进入相应case结构中,调用其执行语句。当调用完执行语句以后,则仍然继续向下执行其他case结构中的执行语句,直到遇到break关键字或此switch-case结构末尾结束为止。
② break,可以使用在switch-case结构中,表示一旦执行到此关键字,就跳出switch-case结构
③ switch结构中的表达式,只能是如下的6种数据类型之一:byte 、short、char、int、枚举类型(jdk5.0新增)、string类型(jdk7.0新增)
④ case 之后只能声明常量。不能声明范围。
⑤ break关键字是可选的。
⑥ default:相当于if-else结构中的else. default结构是可选的,而且位置是灵活的。
⑦ 如果switch-case结构中的多个case的执行语句相同,则可以考虑进行合并。
⑧ break在switch-case中是可选的

public class test {
    public static void main(string[] args) {
        string season = "summer";
        switch (season){
            case "spring":
                system.out.println("春暖花开");
                break;
            case "summer":
                system.out.println("夏日炎炎");//夏日炎炎
                break;
            case "autumn":
                system.out.println("秋高气爽");
                break;
            case "winter":
                system.out.println("冰天雪地");
                break;
            default:
                system.out.println("季节输入有误");
                break;
        }
    }
}

分支结构的使用场景:

对于确定的常量,不涉及到范围,优先考虑使用switch-case结构,因为执行效率稍高;

2.循环结构

循环结构的4要素:

①初始化条件;

②循环条件----boolean类型;

③循环体;

④迭代条件;

2.1for循环

5.Java基本语法-----流程控制

 

 说明:

①循环条件部分为boolean类型的表达式,一般当循环条件部分返回false时结束循环;

②初始化条件部分可以声明多个相同类型的变量;

③迭代部分也可以声明多个

代码:

public class test {
    public static void main(string[] args) {
        //遍历1-100之间的偶数,并打印其和
        int sum = 0;
        for (int i = 1;i <= 100;i++){
            if (i % 2 == 0) {
                system.out.println(i);
                sum += i;
            }
        }
        system.out.println(sum);//2550
    }
}

2.2while循环

5.Java基本语法-----流程控制

 

 说明:

①不要忘记迭代部分,不然会陷入死循环;

②while循环和for循环是可以相互转换的;

代码:

public class test {
    public static void main(string[] args) {
        //遍历1-100之间的奇数,并打印其和
        int sum = 0;
        int i = 1;
        while (i <= 100) {
            if (i % 2 != 0) {
                system.out.println(i);
                sum += i;
            }
            i++;
        }
        system.out.println(sum);//2500
    }
}

2.3do-while循环

5.Java基本语法-----流程控制

 

 说明:

①do-while结构至少执行一次循环体;

②开发中,更多的使用的是while和for,do-while很少使用;

代码:

public class test {
    public static void main(string[] args) {
        //遍历1-100之间的奇数,并打印其和
        int sum = 0;
        int i = 1;
        do {
            if (i % 2 != 0) {
                system.out.println(i);
                sum += i;
            }
            i++;
        }while (i <= 100);
        system.out.println(sum);//2500
    }
}

3.无限循环结构

while(true)或for(;;)

4.判断一个循环是否执行完毕?

①循环条件返回false;

②执行到break;

5.循环嵌套

记住一个点:外层循环控制行数,内层循环控制列数。

public class test {
    public static void main(string[] args) {
        //九九乘法表
        for (int i = 1;i <= 9;i++){
            for (int j = 1;j <= i;j++){
                system.out.print(j + "*" + i + "=" + (j * i) + "\t");
            }
            system.out.println();
        }
    }
}

6.break关键字

  可以使用在switch-case结构、循环结构中。表示结束当前循环,关键字后不能再声明执行语句。

代码:

public class test {
    public static void main(string[] args) {
        for (int i = 0;i < 10;i++){
            if (i == 3) {
                break;
            }
            system.out.println("i = " + i);
        }
        system.out.println("游戏结束");//这条语句可以执行,因为已经出了for循环了
    }
}

带标签的break:

public class test {
    public static void main(string[] args) {
        label:for (int i = 0;i < 10;i++){
            for (int j = 0;j < 10;j++){
                if (j == 4) {
                    break label;
                }
                system.out.println("i * j = " + (i * j));
            }
        }
        system.out.println("游戏结束");//这条语句可以执行,因为已经出了for循环了
    }
}

7.continue关键字

  使用在循环结构中,表示结束当次循环。关键字后不能声明执行语句。

代码:

public class test {
    public static void main(string[] args) {
        for (int i = 0;i < 100;i++){
            if (i % 10 == 0) {
                continue;
            }
            system.out.println(i);
        }
    }
}

 

 

 

作者:java之美

日期:2020-03-28