三元运算符:(条件表达式)? 表达式1 : 表达式2;
要求:表达式1与表达式2为同种数据类型。
既然是运算符,就一定会有运算的结果,结果的数据类型与表达式1,2的类型一致。
三元运算符在一定程度上可以与if-else互换。(三元运算符一定可以转换为if-else,反之不成立。)

class TestSanYuan{
    public static void main(String[] args){
        int i = 20;
        int j = 20;
        //此时max记录了i与j的较大值
        int max = (i > j)? i : j;

        //String str = (i > j)? "i大" : "j大";
        String str = (i > j)? "i大" : (i == j)? "相等" : "j大";

        //String str1 = (i > j)? i : "j大";
        System.out.println(max);
        System.out.println(str);

        //互换
        if(i >= j){
            System.out.println("较大值为:" + i);
        }else{
            System.out.println("较大值为:" + j);
        }

        //练习:如何使用三元运算符,输出三个数中的较大值。
        int m = 12;
        int n = 23;
        int k = -9;
        int max1 = (m > n)? m : n;
        int max2 = (max1 > k)? max1 : k;
        System.out.println(max2);
    }
}

 

posted on 2018-03-23 15:37  linxi1934  阅读(517)  评论(0编辑  收藏  举报