博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JAVA学习笔记06JAVA的运算符(算数运算符、赋值运算符、比较运算符、逻辑运算符、运算符的优先级)
阅读量:3929 次
发布时间:2019-05-23

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

1、算数运算符

*算术运算符就是用来处理四则运算的符号,这是最简单、最常用的运算符号。

在这里插入图片描述

*算术运算符看上去比较简单,也很容易理解,但在实际使用时有很多需要注意的问题,具体如下:

(1)在进行自增(++)和自减(–)的运算时,如果运算符放在操作数的前面则是先进行自增或自减运算,再进行其它运算。反之,如果运算符放在操作数的后面则是先进行其它运算再进行自增或自减运算。
(2)在进行除法运算时,当除数和被除数都为整数时,得到的结果也是一个整数。如果除法运算有小数参与,得到的结果会是一个小数。
(3)在进行取模(%)运算时,运算结果的正负取决于被模数(%左边的数)的符号,与模数(%右边的数)的符号无关。

2.赋值运算符

*赋值运算符的作用就是将常量、变量或表达式的值赋给某一个变量,表中列出了Java中的赋值运算符及用法。

在这里插入图片描述
在赋值运算符的使用中,需要注意以下几个问题:
(1)在Java中可以通过一条赋值语句对多个变量进行赋值

int x,y,z;x=y=z=5;      //为三个变量同时赋值int x=y=z=5;  //这样写是错误的

(2)除了“=”,其它的都是特殊的赋值运算符,以“+=”为例,x += 3就相当于x = x + 3,首先会进行加法运算x+3,再将运算结果赋值给变量x。-=、*=、/=、%=赋值运算符都可依此类推。

注: 在为变量赋值时,当两种类型彼此不兼容,或者目标类型取值范围小于源类型时,需要进行强制类型转换。

然而在使用+=、-=、*=、/=、%= 运算符进行赋值时,强制类型转换会自动完成,程序不需要做任何显式地声明。

3.比较运算符

*比较运算符用于对两个数值或变量进行比较,其结果是一个布尔值,即true或false。

在这里插入图片描述
*比较运算符在使用时需要注意一个问题,不能将比较运算符“==”误写成赋值运算符“=”。

4.逻辑运算符

*比较运算符用于对两个数值或变量进行比较,其结果是一个布尔值,即true或false。

在这里插入图片描述
*比较运算符在使用时需要注意一个问题,不能将比较运算符“==”误写成赋值运算符“=”。

*逻辑运算符用于对布尔型的数据进行操作,其结果仍是一个布尔型。

在这里插入图片描述
*在使用逻辑运算符的过程中,需要注意以下几个细节:
(1)逻辑运算符可以针对结果为布尔值的表达式进行运算。如:x > 3 && y != 0。
(2)运算符“&”和“&&”都表示与操作,当且仅当运算符两边的操作数都为true时,其结果才为true,否则结果为false。当运算符“&”和“&&”的右边为表达式时,两者在使用上还有一定的区别。在使用“&”进行运算时,不论左边为true或者false,右边的表达式都会进行运算。如果使用“&&”进行运算,当左边为false时,右边的表达式不会进行运算,因此“&&”被称作短路与。
(3)运算符“|”和“||”都表示或操作,当运算符两边的操作数任何一边的值为true时,其结果为true,当两边的值都为false时,其结果才为false。同与操作类似,“||”表示短路或,当运算符“||”的左边为true时,右边的表达式不会进行运算。
(4)运算符“^”表示异或操作,当运算符两边的布尔值相同时(都为true或都为false),其结果为false。当两边布尔值不相同时,其结果为true。

5.运算符的优先级

*在对一些比较复杂的表达式进行运算时,要明确表达式中所有运算符参与运算的先后顺序,把这种顺序称作运算符的优先级。

在这里插入图片描述

转载地址:http://aktgn.baihongyu.com/

你可能感兴趣的文章
题目26 孪生素数问题
查看>>
java web 连接mysql数据库
查看>>
docker架构
查看>>
Docker Client创建与命令执行
查看>>
springMVC学习笔记
查看>>
PageRank算法与特征向量和特征值(eigenvector和eigenvalue)
查看>>
HITS算法--从原理到实现
查看>>
MapReduce原理
查看>>
zookeeper原理
查看>>
MapReduce入门
查看>>
WEB服务器、应用程序服务器、HTTP服务器区别
查看>>
归并排序(JAVA)
查看>>
对Java Serializable(序列化)的理解和总结
查看>>
Netty Buffer(缓冲)
查看>>
Docker简单介绍
查看>>
.ftl文件 是什么文件
查看>>
数据结构与算法--栈、队列(队列)
查看>>
动态规划
查看>>
增强学习(一)——马尔科夫决策过程(MDP)
查看>>
增强学习(二)——策略迭代与值迭代
查看>>