博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
第五章 Java运算符
阅读量:5263 次
发布时间:2019-06-14

本文共 1533 字,大约阅读时间需要 5 分钟。

Java运算符

一 分类

  •  算术运算符
  •  赋值运算符
  •  比较运算符
  •  逻辑运算符
  •  条件运算符

二 算术运算符

算术运算符主要用于进行基本的算术运算,如加法、减法、乘法、除法等。

Java 中常用的算术运算符:

其中,++ 和 -- 既可以出现在操作数的左边,也可以出现在右边,但结果是不同。

即:

例1:

int a = 1;int b = ++a;//让a先执行自增,再将值赋值给bSystem.out.println(a);System.out.println(b);

 

  运行结果均为2;

例2:

int a = 1;int b = a++;//a先值赋值给b,再执行自增System.out.println(a);System.out.println(b);

 

运行结果为:2和1。

一定要注意!自增和自减运算符只能用于操作变量,不能直接用于操作数值或常量!例如 5++ 、 8-- 等写法都是错误滴!

PS:% 用来求余数,也称为”取模运算符“。

三 赋值运算符

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

Java 中常用的赋值运算符如下表所示:

 

四 比较运算符

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

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

注意:

    • > 、 < 、 >= 、 <= 只支持左右两边操作数是数值类型;
    • == 、 != 两边的操作数既可以是数值类型,也可以是引用类型。

五 逻辑运算符

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

以下是慕课网的一个例子说明:

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

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

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

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

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

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

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

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

六 条件运算符

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

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

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

例如:

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

 

七 运算符的优先级

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

级别为 1 的优先级最高,级别 11 的优先级最低。譬如,x = 7 + 3 * 2  得到的结果是 13 “先乘后加”嘛!

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

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

    1. 执行 a + 18 ,结果为 30;
    2. 执行( a + 18 ) % 4 取模,结果为 2;
    3. 执行 a * ( ( a + 18 ) % 4 ),结果为 24。

转载于:https://www.cnblogs.com/dayaodao/p/5118844.html

你可能感兴趣的文章
万一哪天笔记全没了, 你真正记住的还有多少
查看>>
DOM事件里封装方法eventUtil
查看>>
[转]EJB核心技术及其应用
查看>>
Leetcode 205 Isomorphic Strings
查看>>
Leetcode 102 Binary Tree Level Order Traversal
查看>>
函数小结
查看>>
SVG <foreignObject>简介与截图等应用 (转载)
查看>>
108. Convert Sorted Array to Binary Search Tree
查看>>
Python通过Manager方式实现多个无关联进程共享数据
查看>>
Linux 服务器buff/cache清理
查看>>
django orm 常用查询筛选
查看>>
关于函数作用域的思考
查看>>
数据库之MySQL(一)
查看>>
jquery 的几种写法和常见问题
查看>>
第二次课程设计实验报告
查看>>
ORCHARD 是什么?
查看>>
[总结] 二维ST表及其优化
查看>>
共阳极数码管三极管驱动
查看>>
人工智能——语义网络表示法
查看>>
主函数 main WinMain _tmain _tWinMain 的区别
查看>>