Java SE入门及基础(9)

if选择结构

1. 基本if选择结构

语法

if ( 条件 ){    // 如果条件满足,则执行代码块
        //代码块
}

案例

  从控制台输入一个整数,如果该数字小于 10 ,则输出 10 与该数字的差值。

流程图

代码实现

public class Example1 {
        public static void main ( String [] args ) {
                Scanner sc = new Scanner ( System . in );
                System . out . println ( " 请输入一个整数: " );
                int number = sc . nextInt ();
                if ( number < 10 ){
                        int diff = 10 - number ;
                        System . out . println ( "10 与该数字的差值是: " + diff );
                }
        }
}

2. if-else选择结构

语法

if ( 条件 ){    // 如果条件满足,则执行代码块 1
        //代码块 1
} else {    // 否则,执行代码块 2
        //代码块 2
}

案例

           从控制台输入一个整数,如果该数字是偶数,则输出输入的数字" 是偶数 " ,否则输出输入的数字 " 是奇数"

流程图

Java SE入门及基础(9)_第1张图片

代码实现

public class Example2 {
        public static void main ( String [] args ) {
                Scanner sc = new Scanner ( System . in );
                System . out . println ( " 请输入一个整数: " );
                int number = sc . nextInt ();
                if ( number % 2 == 0 ){
                        System . out . println ( " 是偶数 " );
                } else {
                        System . out . println ( " 是奇数 " );
                }
        }
}

三元一次运算符(条件 ? 表达式1 : 表达式2

?   表示的意思是询问前面的条件是否满足,如果满足,则使用表达式 1 。:表示否则,即条件不满足,使用表达式2
public class Example2 {
        public static void main ( String [] args ) {
                Scanner sc = new Scanner ( System . in );
                System . out . println ( " 请输入一个整数: " );
                int number = sc . nextInt ();
                // if(number % 2 == 0){
                        // System.out.println("是偶数");
                // } else {
                        // System.out.println("是奇数");
                // }
                System . out . println (( number % 2 == 0 ) ? " 是偶数 " : " 是奇数 " );
        }
}
三元一次运算符执行效率相较于 if-else 选择结构来说较为低下,不建议大家常用

3. 嵌套if选择结构

语法

if ( 条件 1 ){ // 如果条件 1 满足,则执行其后大括号中的代码块
        if ( 条件 2 ){ // 在满足条件 1 的基础上再满足条件 2
                //代码块
        } else { // 该结构可以省略不写,表示其他情况不做任何处理
                //代码块
        }
} else { // 该结构可以省略不写,表示其他情况不做任何处理
        if ( 条件 3 ){ // 在不满足条件 1 的基础上再满足条件 3
                //代码块
        } else { // 该结构可以省略不写,表示其他情况不做任何处理
                //代码块
        }
}

案例

  在半决赛中,如果取得胜利,则可以进入决赛。否则,输出 " 已被淘汰 " 。如果是男子,则输出 " 进入男子组决赛" ;否则,输出 " 进入女子组决赛 "

流程图

Java SE入门及基础(9)_第2张图片

代码实现

public class Example3 {
        public static void main ( String [] args ) {
                Scanner sc = new Scanner ( System . in );
                System . out . println ( " 请输入是否获胜 (Y/N) " );
                String win = sc . next ();
                //比较字符串相同使用字符串的equals 方法
                if ( "Y" . equals ( win )){
                        System . out . println ( " 请输入性别: " );
                        String sex = sc . next ();
                        if ( " " . equals ( sex )){
                        System . out . println ( " 进入男子组决赛 " );
                        } else {
                                System . out . println ( " 进入女子组决赛 " );
                        }
                } else {
                        System . out . println ( " 已被淘汰 " );
                }
        }
}

4. 多重if选择结构

语法

if ( 条件 1 ){ // 如果条件 1 满足,则执行代码块 1
        //代码块 1
} else if ( 条件 2 ){ // 如果条件 2 满足,则执行代码块 2 。这样的结构可以有多个
        //代码块 2
} //else if 结构可能有多个
else { // 否则,执行代码块 3 。该结构可以省略不写,表示其他情况不做任何处理
        //代码块 3
}

案例

  小明去买了 1 注彩票,如果中了一等奖,则可以领取 500 万;如果中了二等奖,则可以领取 100 万;如果中了三等奖,则可以领取1000 块;如果中了四等奖,则可以领取 10 块;如果中了五等奖,则可以领取5 块;否则,没有奖励。

流程图

Java SE入门及基础(9)_第3张图片

代码实现

public class Example5 {
        public static void main ( String [] args ) {
                Scanner sc = new Scanner ( System . in );
                System . out . println ( " 请输入中奖等级: " );
                int level = sc . nextInt ();
                if ( level == 1 ){
                        System . out . println ( " 领取 500 " );
                } else if ( level == 2 ){
                        System . out . println ( " 领取 100 " );
                } else if ( level == 3 ){
                        System . out . println ( " 领取 1000 " );
                } else if ( level == 4 ){
                        System . out . println ( " 领取 10 " );
                } else if ( level == 5 ){
                        System . out . println ( " 领取 5 " );
                } else {
                        System . out . println ( " 没有奖励 " );
                }
        }
}

5. 逻辑短路

逻辑与短路

        使用逻辑与衔接的多个条件中,只要其中一个条件为假,那么该条件之后的所有条件将得不到执行,从而形成逻辑与短路。

逻辑或短路

        使用逻辑或衔接的多个条件中,只要其中一个条件为真,那么该条件之后的所有条件将得不到执行,从而形成逻辑或短路。

更多Java SE文章参考:Java SE入门及基础知识合集-CSDN博客

你可能感兴趣的:(Java,SE,java,开发语言,算法)