java条件运算符的执行规则有哪些类型和类型的区别

条件运算符的类型

Java中的条件运算符有三种:三目运算符、逻辑与运算符和逻辑或运算符。

三目运算符也称为“条件运算符”,语法结构为“条件表达式?表达式1:表达式2”,它的作用是根据条件表达式的结果来选择表达式1或表达式2中的一个作为整个表达式的值。例如:

    int a = 10, b = 20;
    int max = (a > b) ? a : b;
    System.out.println("max = " + max);

逻辑与运算符用“&&”表示,其两个操作数都为true时返回true,否则返回false。例如:

java条件运算符的执行规则有哪些类型和类型的区别

    int a = 10, b = 20;
    if(a > 5 && b > a){
        System.out.println("a > 5 && b > a");
    }

逻辑或运算符用“||”表示,其两个操作数都为false时返回false,否则返回true。例如:

    int a = 10, b = 20;
    if(a > 15 || b  15 || b < a");
    }

条件运算符的执行规则

Java中的条件运算符是从左往右求值的。对于三目运算符,先计算条件表达式的值,如果为true,返回表达式1的值,否则返回表达式2的值。例如:

    int a = 10, b = 20;
    int max = (a > b) ? a : b;
    System.out.println("max = " + max);

首先计算条件表达式“a > b”的值,由于a小于b,所以返回false,然后返回表达式2的值b,因此max的值就是20。

对于逻辑与运算符,如果操作数1的值为false,则不会执行操作数2,直接返回false。例如:

    int a = 10, b = 20;
    if(a > 5 && b > a){
        System.out.println("a > 5 && b > a");
    }

首先计算操作数1的值“a > 5”的结果为true,然后计算操作数2的值“b > a”的结果也为true,因此输出结果为“a > 5 && b > a”。

对于逻辑或运算符,如果表达式1的值为true,则不会对表达式2进行求值,直接返回true。例如:

    int a = 10, b = 20;
    if(a > 15 || b  15 || b < a");
    }

首先计算操作数1的值“a > 15”的结果为false,然后计算操作数2的值“b 15 || b < a”。

类型的区别

三目运算符和逻辑运算符的差别在于返回值的类型不同。三目运算符的返回值类型由表达式类型决定,而逻辑运算符的返回值类型永远是boolean类型。例如:

    int a = 10, b = 20;
    int max = (a > b) ? a : b;
    System.out.println("max = " + max);

三目运算符根据条件表达式的结果会返回表达式1或表达式2中的一个,因此max的类型是int型。

    boolean result = (a > 5) && (b > a);
    System.out.println("result = " + result);

逻辑与运算符的返回值类型永远是boolean类型,因此result的类型是boolean型。

本文来自投稿,不代表亲测学习网立场,如若转载,请注明出处:https://www.qince.net/java6pjava.html

郑重声明:

本站所有内容均由互联网收集整理、网友上传,并且以计算机技术研究交流为目的,仅供大家参考、学习,不存在任何商业目的与商业用途。 若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。

我们不承担任何技术及版权问题,且不对任何资源负法律责任。

如遇到资源无法下载,请点击这里失效报错。失效报错提交后记得查看你的留言信息,24小时之内反馈信息。

如有侵犯您的版权,请给我们私信,我们会尽快处理,并诚恳的向你道歉!

(0)
上一篇 2023年4月24日 下午11:33
下一篇 2023年4月24日 下午11:33

猜你喜欢