1. 首页
  2. Java

Java基本语法—–流程控制

一、分类

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

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

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

二、具体说明

1.分支结构

1.1if分支结构

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

 

 

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结构

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循环

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循环

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循环

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);
        }
    }
}
复制代码

本文来自投稿,不代表程序员编程网立场,如若转载,请注明出处:http://www.cxybcw.com/188948.html

联系我们

13687733322

在线咨询:点击这里给我发消息

邮件:1877088071@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

QR code