一、判断语句

if语句

  1. if(布尔表达式){
  2. java语句;
  3. java语句;
  4. }
  5. 执行原理:如果布尔表达式的结果是true
  6. 则执行大括号中的程序。
  7. 如果是false,则执行括号外面的。
  1. if(布尔表达式){
  2. java语句;//分支一
  3. }else{
  4. java语句;//分支二
  5. }
  6. 执行原理:如果布尔型表达式的结果是true,则执行分支一,分支二不执行。
  7. 一定会从2个中选一个的。
  1. if(布尔表达式1){
  2. java语句;
  3. }else if(布尔表达式2){
  4. java语句;
  5. }else if(布尔表达式3){
  6. java语句;
  7. }else if(布尔表达式4){
  8. java语句;
  9. }else{
  10. java语句;
  11. }//以上条件没有一个成立的。这个else就执行了。

switc语句

  1. switch (表达式) {
  2. case 1:
  3. 语句体1;
  4. break;
  5. case 2:
  6. 语句体2;
  7. break;
  8. ...
  9. default:
  10. 语句体n+1;
  11. break;
  12. }

执行流程

  • 首先计算出表达式的值
  • 其次,和case依次比较,一旦有对应的值,就会执行相应的语句,在执行的过程中,遇到break就会结 束。
  • 最后,如果所有的case都和表达式的值不匹配,就会执行default语句体部分,然后程序结束掉。 ```java package a01switch选择语句;

import java.util.Scanner;

public class SwitchDemo2 { public static void main(String[] args) { //1.键盘录入一个整数表示星期 Scanner sc = new Scanner(System.in); System.out.println(“请输入一个整数表示星期”); int week = sc.nextInt();

  1. //2.书写一个switch语句去跟week进行匹配
  2. switch (week){
  3. case 1:
  4. System.out.println("跑步");
  5. break;
  6. case 2:
  7. System.out.println("游泳");
  8. break;
  9. case 3:
  10. System.out.println("慢走");
  11. break;
  12. case 4:
  13. System.out.println("动感单车");
  14. break;
  15. case 5:
  16. System.out.println("拳击");
  17. break;
  18. case 6:
  19. System.out.println("爬山");
  20. break;
  21. case 7:
  22. System.out.println("好好吃一顿");
  23. break;
  24. default:
  25. System.out.println("输入错误,没有这个星期");
  26. break;
  27. }
  28. }

}

  1. <a name="yj7jc"></a>
  2. #### switch的扩展知识
  3. - default的位置和省略情况default可以放在任意位置,也可以省略
  4. - case穿透不写break会引发case穿透现象
  5. - switch在JDK12的新特性
  6. ```java
  7. int number = 10;
  8. switch (number) {
  9. case 1 -> System.out.println("一");
  10. case 2 -> System.out.println("二");
  11. case 3 -> System.out.println("三");
  12. default -> System.out.println("其他");
  13. }
  1. //分析:
  2. //1.键盘录入星期数
  3. Scanner sc = new Scanner(System.in);
  4. System.out.println("请输入星期");
  5. int week = sc.nextInt();//3
  6. //2.利用switch进行匹配
  7. ----------------------------------------------------
  8. 利用case穿透简化代码
  9. switch (week){
  10. case 1:
  11. case 2:
  12. case 3:
  13. case 4:
  14. case 5:
  15. System.out.println("工作日");
  16. break;
  17. case 6:
  18. case 7:
  19. System.out.println("休息日");
  20. break;
  21. default:
  22. System.out.println("没有这个星期");
  23. break;
  24. }
  25. ----------------------------------------------------
  26. 利用JDK12简化代码书写
  27. switch (week) {
  28. case 1, 2, 3, 4, 5 -> System.out.println("工作日");
  29. case 6, 7 -> System.out.println("休息日");
  30. default -> System.out.println("没有这个星期");
  31. }

二、循环

for循环

  1. for(定义初始变量1;循环条件2;变量的变化值4){
  2. 循环语句块3
  3. }
  4. for语句执行顺序为 1 2 3 4 2 3 4...
  5. 其中 ①定义初始变量只在进入循环时执行一次
  6. 如果循环条件有多个,则需要使用&& || 分隔开
  7. 如果初始变量和变化值有多个,则只需使用 逗号分隔开

while循环

  1. 初始化语句;
  2. while(条件判断语句){
  3. 循环体;
  4. 条件控制语句;
  5. }

do…while循环

  1. 初始化语句;
  2. do{
  3. 循环体;
  4. 条件控制语句;
  5. }while(条件判断语句);

二、循环高级

1.无限循环

for格式:

  1. for(;;){
  2. System.out.println("循环执行一直在打印内容");
  3. }

while格式:

  1. while(true){
  2. System.out.println("循环执行一直在打印内容");
  3. }

do…while格式:

  1. do{
  2. System.out.println("循环执行一直在打印内容");
  3. }while(true);

2.条件控制语句

break:

  1. 不能单独存在的。可以用在switch和循环中,表示结束,跳出的意思。<br />代码示例:
  1. //1.吃1~5号包子
  2. for (int i = 1; i <= 5; i++) {
  3. System.out.println("在吃第" + i + "个包子");
  4. //2.吃完第三个的时候就不吃了
  5. if(i == 3){
  6. break;//结束整个循环。
  7. }
  8. }

continue

  1. 不能单独存在的。只能存在于循环当中。<br /> 表示:跳过本次循环,继续执行下次循环。<br />代码示例:
  1. //1.吃1~5号包子
  2. for (int i = 1; i <= 5; i++) {
  3. //2.第3个包子有虫子就跳过,继续吃下面的包子
  4. if(i == 3){
  5. //跳过本次循环(本次循环中,下面的代码就不执行了),继续执行下次循环。
  6. continue;
  7. }
  8. System.out.println("在吃第" + i + "个包子");
  9. }