Java教程:三元运算符

开课吧开课吧锤锤2021-07-26 11:54

一元运算符:只需要一个数据就可以进行操作的运算符,例如:取反!、自增++、自减--  

二元运算符:需要两个数据才可以进行操作的运算符,例如:加法+、赋值=  

三元运算符:需要三个数据才可以进行操作的运算符。  

Jav教程:三元运算符

三元运算符的格式  

数据类型变量名称=条件判断?表达式A:表达式B;  

public class Demo10Operator {
    public static void main(String[] args) {
        int a = 10;
        int b = 20;

        // 数据类型 变量名称 = 条件判断 ? 表达式A : 表达式B;
        // 判断a > b是否成立,如果成立将a的值赋值给max;如果不成立将b的值赋值给max。二者选其一
        int max = a > b ? a : b; // 最大值的变量
        System.out.println("最大值:" + max); // 20

        // int result = 3 > 4 ? 2.5 : 10; // 错误写法!

        System.out.println(a > b ? a : b); // 正确写法!

        // a > b ? a : b; // 错误写法!
    }
}

首先判断条件是否成立:  

如果成立为true,那么将表达式A的值赋值给左侧的变量;  

如果不成立为false,那么将表达式B的值赋值给左侧的变量;  

二者选其一。  

注意事项:  

必须同时保证表达式A和表达式B都符合左侧数据类型的要求。  

三元运算符的结果必须被使用。  

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

/*
    三元运算符求三个数最大值
        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,系统自动判断两个表达式的类型,并进行隐式转换
    }
}

以上就是开课吧广场小编为大家整理发布的“Java教程:三元运算符”一文,更多Java教程相关内容尽在开课吧Java教程频道。

免责声明:本站所提供的内容均来源于网友提供或网络搜集,由本站编辑整理,仅供个人研究、交流学习使用。如涉及版权问题,请联系本站管理员予以更改或删除。
有用
分享