运算符篇:三元运算符

299 阅读1分钟

三元运算符 —— (判断语句)?语句1:语句2

  • 个人分析

    可以把整个语句拆分成两部分来看。

    第一部分可以看括号内的内容。咱们可以把括号当成是if语句没有了if这个关键字。它的作用是给出boolean值。

    第二部分则是?号之后的部分。如果前面括号部分给出的boolean值是true的话,执行语句1;如果前面括号部分给出的boolean值是false的话,执行语句2。

  • 例子:

    public class test {
        public static void main(String[] args) {
            int a = 1;
            int b = 2;
            String str = (a > b) ? "a比b大" : "b比a大";
            System.out.println(str);
        }
    }
    

    结果:

    b比a大
    

    我们可以直接给出boolean值

    例子:

    public class test {
        public static void main(String[] args) {
            String str = (false) ? "a比b大" : "b比a大";
            System.out.println(str);
        }
    }
    

    结果:

    b比a大
    

    如果两个执行语句的类型不同,我们可以用 Object 变量来接受,如果需要后续步骤需要对 Object 变量进行类型变化。(一般都不会这么做,我就提一嘴,让自己知道而已)

    例子:

    public class test {
        public static void main(String[] args) {
            Object obj = (1 > 2) ? "1比2大" : 2;
            System.out.println(obj);
        }
    }
    

    结果:

    2
    

总结

  1. 如果条件允许,经量写三元运算符,比较简洁。
  2. 一般会有一个变量来接受三元运算符的结果。
  3. 两个执行语句和接受变量的类型一般来说是一致的,但不排除用 Object 类型来接收。