java基础-三元运算符

1.三元运算符的格式

/*
    三元运算符
        (条件表达式)?表达式1:表达式2;
                如果条件为true,整个表达式结果是表达式1;
                如果条件为false,整个表达式结果是表达式2;

    注意:三元运算符不能单独使用,要么赋值,要么当成参数传递给方法
    
*/
public class TenaryDemo{
    public static void main(String[] args){
        // int i = (1>2)?1:2;
        // System.out.println(i);
        
        // int a = 10;
        // int b = 10;
        // // String res = (a > b)?"S1":"S2";
        // int max = (a > b)?a:b;
        // System.out.println(max);
        
        int i = 10;
        int ii = 20;
        // boolean res = i > ii ? true:false;
        System.out.println(i > ii ? true:false);
        
    }
}
            

 2,eg 

三元运算符求三个数的最大值

/*
    三元运算符求三个数最大值
        1.普通做法:先求前两个数中的最大值,然后再求三个数中的最大值
        2.三元运算符的嵌套(不利于阅读)
    
    特点:
        三元运算符的两个表达式会隐式进行类型转换.
*/
public class TenaryDemo2{
    public static void main(String[] args){
        /*
        int a = 70;
        int b = 90;
        int c = 30;
        //先求前两个数的最大值
        // int m1 = (a > b)?a:b;
        //在求三个数中的最大值
        // int res = (m1 > c)?m1:c;
        
        //三元运算符的嵌套
        int res = (a > b)?(a > c?a:c):(b > c?b:c);
        
        System.out.println("三个数中的最大值是: " + res);
        */
        
        System.out.println(2>1?2:1.0);//2.0,系统自动判断两个表达式的类型,并进行隐式转换
    }
}
原文地址:https://www.cnblogs.com/leo9257/p/8733230.html