深入浅出Java入门 之 运算符(2)

来源:互联网 发布:sublime text 3编译js 编辑:程序博客网 时间:2024/05/01 16:54

2-3 赋值运算符

赋值运算符是指为变量或常量指定数值的符号。如可以使用 “=” 将右边的表达式结果赋给左边的操作数。

Java 支持的常用赋值运算符,如下表所示:

这里写图片描述

2-4 比较运算符

比较运算符用于判断两个数据的大小,例如:大于、等于、不等于。比较的结果是一个布尔值( true 或 false )。

Java 中常用的比较运算符如下表所示:

这里写图片描述

注意:

1、 > 、 < 、 >= 、 <= 只支持左右两边操作数是数值类型

2、 == 、 != 两边的操作数既可以是数值类型,也可以是引用类型

//应用举例public class HelloWorld{    public static void main(String[] args) {        int a=16;        double b=9.5;        String str1="hello";        String str2="imooc";        System.out.println("a等于b:" + (a==b));        System.out.println("a大于b:" + (a > b));        System.out.println("a小于等于b:" + (a <= b));        System.out.println("str1等于str2:" + (str1 ==str2));    }}/*运行结果: *a等于b:false *a大于b:true *a小于等于b:false *str1等于str2:false */

2-5 逻辑运算符

逻辑运算符主要用于进行逻辑运算。Java 中常用的逻辑运算符如下表所示:

这里写图片描述

我们可以从“投票选举”的角度理解逻辑运算符:

1、 与:要求所有人都投票同意,才能通过某议题

2、 或:只要求一个人投票同意就可以通过某议题

3、 非:某人原本投票同意,通过非运算符,可以使其投票无效

4、 异或:有且只能有一个人投票同意,才可以通过某议题

当使用逻辑运算符时,我们会遇到一种很有趣的“短路”现象。

譬如:( one > two ) && ( one < three ) 中,如果能确定左边 one > two 运行结果为 false , 则系统就认为已经没有必要执行右侧的 one < three 。

同理,在( one > two ) || ( one < three ) 中,如果能确定左边表达式的运行结果为 true , 则系统也同样会认为已经没有必要再进行右侧的 one < three 的执行!

2-6 条件运算符

条件运算符( ? : )也称为 “三元运算符”。

语法形式:布尔表达式 ? 表达式1 :表达式2

运算过程:如果布尔表达式的值为 true ,则返回 表达式1 的值,否则返回 表达式2 的值

例如:

String str= (8>5)?:"8大于5""8不大于5";System.out.println(str);

因为,表达式 8>5 的值为 true ,所以,返回: 8大于5

2-7 运算符的优先级

所谓优先级,就是在表达式中的运算顺序。Java 中常用的运算符的优先级如下表所示:

级别为 1 的优先级最高,级别 11 的优先级最低。

注:大家没必要去死记运算符的优先级顺序,实际开发中,一般会使用小括号辅助进行优先级管理。例如:

int a=12;int b= a * ((a+18)*4);System.out.println("b="+b);

分析:小括号优先级最高,因此

1、 执行 a + 18 ,结果为 30

2、 执行( a + 18 ) % 4 取模,结果为 2

3、 执行 a * ( ( a + 18 ) % 4 ),结果为 24

0 0
原创粉丝点击