java选择结构语句

本文详细介绍了Java编程中的选择结构,包括基础if语句及其注意事项,if-else结构的用法,三目运算符的语法和应用,多重if选择结构的执行流程,以及switch结构的执行原理和特点。通过实例展示了如何在不同场景中灵活运用这些选择结构来实现条件判断和分支执行。
摘要由CSDN通过智能技术生成

1、基础if选择结构是根据条件判断之后再做处理        

语法:

if (条件) {
    //代码块
}

        即:if (boolean) { code }

注意:(1)条件为boolean值,如果是true则执行代码块,如果是false则不执行;

          (2)当if关键字后的一对大括号里只有一个语句时,可以省略大括号,但是为了避免有多个语句时遗忘大括号,以及保持程序整体风格一致,建议不要省略if结构块的大括号。

执行流程如下:

 例:需求:如果今天下雨,我们就不上课

        分析:今天下雨 -->是条件;条件满足-->执行不上课     

boolean rain = false;

if (rain) {
    System.out.println("今天不上课");  // 条件不满足,不执行
}

System.out.println("程序结束!");
boolean rain = true;

if (rain) {
    System.out.println("今天不上课"); //条件满足,执行,输出:今天不上课
}

System.out.println("执行程序结束!");

2、if-else选择结构        

语法:

if (条件) {
    //代码块1
} else {
    //代码块2
}

        即:if (boolean) { A } else { B }

执行流程如下:

 例1:需求:如果今天下雨,我们就不上课

          分析:今天下雨 -->是条件;条件满足-->执行不上课;条件不满足-->执行上课

boolean rain = true;

if (rain) {
    System.out.println("今天不上课");
} else {
    System.out.println("今天上课");
}

System.out.println("程序结束!");

例2:需求:如果gender的值为true则sex的值为 :精神小伙儿;如果gender的值为false则sex的值为:扒蒜老妹儿

boolean gender = false;
String sex;

if (gender) {
    sex = "精神小伙儿";
} else {
    sex = "扒蒜老妹儿";
}

System.out.println("性别 >>> " + sex);
System.out.println("程序执行结束");

3、三目运算符(三元运算符)

语法:条件 ? 表达式1 :表达式2

例:需求:如果gender的值为true则sex的值为 :精神小伙儿;如果gender的值为false则sex的值为:扒蒜老妹儿        

boolean gender = false;

String sex = gender == true ? "精神小伙儿" : "扒蒜老妹儿";
System.out.println("性别 >>> " + sex); //输出结果为“扒蒜老妹儿”

System.out.println("程序执行结束");

4、多重if选择结构

语法:

if (条件1) {
    //代码块1
} else if (条件2) { //else if 可以有多个
    //代码块2
} else {  //可以省略
    //代码块3
}

注意事项:(1)多重if结构是自上而下进行判断的,只要有一个条件成立,其他的就不在执行了;

                  (2)else if可以写多个,但是必须配合if使用;

                  (3)可以配合else使用。

执行流程如下:

例:随机生成0到7之间不包含7的整数 0 1 2 3 4 5 6;如果这个数字是0 ,则输出今天是星期日, 如果是1则输出星期一, 如果是2则输出星期二 ,以此类推

Random random = new Random();
int i = random.nextInt(7); //随机生成0到7之间不包含7的整数       
System.out.println(i);

if (i == 1) {
    System.out.println("星期一");
} else if (i == 2) {
    System.out.println("星期二");
} else if (i == 3) {
    System.out.println("星期三");
} else if (i == 4) {
    System.out.println("星期四");
} else if (i == 5) {
    System.out.println("星期五");
} else if (i == 6) {
    System.out.println("星期六");
} else {
    System.out.println("星期日");
}

System.out.println("程序结束!");

5、switch结构(属于选择结构,也是分支语句)

语法:

switch (表达式) {
    case 常量表达式1:
        //代码块1
        break;
    case 常量表达式2:
        //代码块2
        break;
        ......
    case 常量表达式n:
        //代码块n
        break;
    default:
        //代码块n+1
        break;
}

注意事项:(1)表达式可以是byte、short、char、int、String类型

                 (2)switch语句的执行原理:switch后面小括号当中的“数据”和case后面的“数据”进行一一匹配;匹配成功的分支执行

                 (3)匹配成功的分支执行,分支当中有“break”语句的话,整个switch语句终止

               (4)匹配成功的分支执行,分支当中没有“break”语句的话,直接进入下一个分支执行(不进行匹配);这种现象称为case穿透现象

               (5)所有分支都没有匹配成功,当有default的语句,会执行default分支当中的程序

例:需求:随机生成0到7之间不包含7的整数 0 1 2 3 4 5 6;如果这个数字是0 ,则输出今天是星期日, 如果是1则输出星期一, 如果是2则输出星期二 ,以此类推

Random random = new Random();
int i = random.nextInt(7);
System.out.println(i);

switch (i) {
    case 1:
        System.out.println("星期一");
        break;
    case 2:
        System.out.println("星期二");
        break;
    case 3:
        System.out.println("星期三");
        break;
    case 4:
        System.out.println("星期四");
        break;
    case 5:
        System.out.println("星期五");
        break;
    case 6:
        System.out.println("星期六");
        break;
    default:
        System.out.println("星期日");
        break;
}

System.out.println("程序结束!");

此外,如果安装JDK版本比较高,可以支持以下写法:

Random random = new Random();
int i = random.nextInt(7);
System.out.println(i);

switch (i) {
    case 1 -> System.out.println("星期一");
    case 2 -> System.out.println("星期二");
    case 3 -> System.out.println("星期三");
    case 4 -> System.out.println("星期四");
    case 5 -> System.out.println("星期五");
    case 6 -> System.out.println("星期六");
    default -> System.out.println("星期日");
}
System.out.println("程序结束!");

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值