关于三目运算符(三元运算符)的常用知识,你想要的这里全都有!!!

一、基础知识

三元运算符,也称为条件运算符,是一种简化条件表达式的语法结构。在 Java 中,三元运算符的语法如下:

result = condition ? expression1 : expression2;
  • condition 是一个布尔表达式,如果为真(true),则整个表达式的值是 expression1; 
  • 如果 condition 为假(false),则整个表达式的值是 expression2
  • 例如:int c=(a>=b)?a:b; 如果a>=b 则把a的值赋给c 否则把b的值赋给c

为什么要用到三目运算符呢?来看一个简单的场景 

public static void main(String[] args) {
    int a=1;
    int b=2;
    if(a>b){
        System.out.println(a);
    }
    if(b>a){
        System.out.println(b);
    }
}

再来看一个使用三目运算符的场景:

public static void main(String[] args) {
    int a=1;
    int b=2;
    int c=(a>=b)?a:b;
    System.out.println(c);
}

这么一看是不是用三元运算符解决问题比较简洁呢 

二、常见用法

2.1嵌套三目运算符:

上一个例子使用的是寻求两个数中的最大数 那如果三个数求最大值怎么办呢?这个时候就要用到嵌套了

public static void main(String[] args) {
    int a=1;
    int b=2;
    int c=3;
    int d=((a>b)?((a>c)?a:c):((b>c)?b:c));
    System.out.println(d);
}

我们慢慢的来刨析一下执行顺序: 首先是判断a是否大于b? 如果a大于b则执行 (a>c)?a:c  ,否则执行(b>c)?b:c
这么一看是不是使用三元表达式要比你用一堆 if 看起来舒服一些?

2.2 作为参数

还是求三个数最大值 我们还可以用三目运算符

public static void main(String[] args) {
    int a=1;
    int b=2;
    int c=5;
    int d = Math.max((a > b) ? a : b, c);
    System.out.println(d);
}

这里的三目运算符用来当作参数

2.3 非空验证

String result = (value != null) ? value : "Default";

以上就是三目运算符的一些基本用法,虽然在实际开发过程中也行有更好的解决方案,但是该会的东西还是得会!!! 

如果觉得有用就点个赞支持一下 谢谢各位

  • 10
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
三目运算符又称为三元运算符和条件运算符,在多种编程语言中都有使用。它的作用是进行条件判断,可以理解为if条件判断的简化版。\[1\]一元运算符只需要一个数据进行操作,例如取反、自增、自减;二元运算符需要两个数据进行操作,例如加法、减法、乘法等等;而三元运算符则需要三个数据进行操作。\[2\]在JavaScript中,三目运算符的基本格式是:条件表达式 ? 表达式1 : 表达式2,其中条件表达式为真时返回表达式1,否则返回表达式2。\[3\]在Python中也有类似的三目运算符,但语法略有不同。 #### 引用[.reference_title] - *1* *3* [什么是三目运算符三目运算符怎么使用?](https://blog.csdn.net/zy1992As/article/details/127884410)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [JAVA 系列——>三元运算符三目运算符)](https://blog.csdn.net/qq_16397653/article/details/103601970)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值