Java 实例 - 三目条件运算符

本文深入探讨了三目条件运算符在编程中的应用,通过多个示例解释了其语法和用法,包括数字比较、字符串比较、赋值及方法调用场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >







三目/三元/条件运算符


三目条件运算符,也称为条件运算符三元运算符,是一种在编程中常用的简单条件判断工具。这个运算符由三个操作数组成,因此被称为“三目”。它的基本形式如下:

  • 公式: 表达式 ? 表达式1 : 表达式2

  • 含义:
    当表达式的结果为 true 的时候,则执行表达式1
    当表达式的结果为 false 的时候,则执行表达式2


条件:即公式问号(?)左边的表达式,这是一个布尔表达式,它必须返回一个真值(true)或假值(false);

表达式1:如果条件为真 (true),则执行并返回此表达式的值。
表达式2:如果条件为假 (false),则执行并返回此表达式的值。

注:表达式1和表达式2的结果类型需要一致



以下是使用三目条件运算符的一些示例[5]:



示例 1:简单的数字比较



int a = 200;
int b = 150;
String result = a > b ? "小故重" : "小屿重";
// 打印:200
System.out.println(result);



示例 2:字符串比较



String str1 = "gu";
String str2 = "yu";
String greeting = (str1.equals(str2)) ? "Both strings are equal" : "Strings are not equal";
// 打印:Strings are not equal
System.out.println(greeting);  

  • 如上示例中,str1 和 str2 分别被初始化为字符串 “gu” 和 “yu”。接着,使用三目条件运算符(也叫做三元运算符)来检查这两个字符串是否相等。由于 “gu” 并不等于 “yu”,所以条件 str1.equals(str2) 的结果为 false。
  • 因此,表达式 (str1.equals(str2)) ? “Both strings are equal” : “Strings are not equal” 的结果是 “Strings are not equal”,因为当条件为 false 时,会执行冒号(:)后面的表达式。


示例 3:在赋值中使用



int score = 85;
String grade = (score >= 90) ? "A" : 
             (score >= 80) ? "B" : 
             (score >= 70) ? "C" : 
             (score >= 60) ? "D" : "F";
// 打印:Grade: B
System.out.println("Grade: " + grade);



示例 4:在方法调用中使用



public static String getGreeting(boolean isMorning) {
    return isMorning ? "Good morning!" : "Good afternoon!";
}

public static void main(String[] args) {
    boolean isMorning = true;
    // 打印:Good morning!
    System.out.println(getGreeting(isMorning));
}




巩固示例



package guyu.day0903;

/**
 * @Author: guyu
 * @Date: 2020/9/3 10:59
 */
public class Demo01 {
    public static void main(String[] args) {

        /**
         * 三目条件运算符其语法: x ? y : z
         * 其中 x 为 boolean 类型表达式,先计算 x 的值,
         * 若为true,则整个三目运算的结果为表达式 y 的值,
         * 否则整个运算结果为表达式 z 的值。
         */
        int a , b;
        a = 10;

        // 如果 a 等于 1 成立,则设置 b 为20,否则为30
        b = (a == 1) ? 20 : 30;
        // 输出:b = 30
        System.out.println("b = " + b);

        // 如果 a 等于 10 成立,则设置 b 为20,否则为30
        b = (a == 10) ? 20 : 30;
        // 输出:b = 20
        System.out.println("b = " + b);

    }
}




如上示例 [5] 都展示了三目条件运算符在不同场景中的用法。它提供了一种简洁的方式来执行简单的条件判断,并返回相应的值。在 Java 中使用其它运算符详情见:Java 运算符









故屿γ

Note:
欢迎转载,请在文章页面明显位置给出原文链接,否则保留追究法律责任的权利;
最后,感谢您在茫茫人海中阅读了我的文章。
没有个性 哪来的签名!
详情请关注点我
持续更新中

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值