java除号_Java的运算符

1.算数运算符

+ 加(正号) - 减(符号) * 乘 / 除

% 取模(取余) ++ 自增 -- 自减

+号的几种作用:

加法运算 表示为一个正数 还可以用来作字符串的拼接

整数相除只能得到整数。如果想得到小数,必须把参与计算的数据变化为浮点类型的数据。

自增和自减运算,在单独使用,效果是一样的。

在参与其它运算时:

++ 在前 当前数先 +1 ,在进行其它运算。

++ 在后 先进行其它运算,当前数在 +1。

-- 在前 当前数先 -1 ,在进行其它运算。

-- 在后 先进行其它运算,当前数在 -1。

常量不可以使用 自增和自减运算。

2.赋值运算符

基本的赋值运算符:=

扩展的赋值运算符:+= , -= , *= , /= , %=

扩展的赋值运算符,默认隐含了一个强制类型转换

常量不可以使用

3.比较运算符

== 相等于 != 不等于 < 小于 > 大于 <= 小于等于 >= 大于等于 instanceof 检查是否是类的对象

不管操作简单还是复杂,结果肯定是boolean类型。

instanceof 判断是否是类的对象 Eg : "hello" instanceof String; true

4.逻辑运算符

& (AND 与) | (OR 或) ^(XOR 异或)

!(Not 非) &&(短路与) ||(短路或)

用于连接结果为布尔型的表达式。

^(异或) 逻辑运算符 两边相同为 false 不同为true;

单 &,运算符左边无论真假 右边的表达式都进行运算。

双 &&,运算符左边为真,右边的表达式参与运算;如果运算符为假,右边的表达式则不再参与运算(提高了程序的执行效率)。

| 和 || 同理,||左边的表达式为真后面的表达式子则不进行运算。

!(Not 非)可以写多个,单数个为反,偶数个不变。

5.位运算符

<< 左移(有符号) >> 右移(有符号) >>> 无符号右移

& 位与运算 | 位或运算 ^ 位异或运算

~ 按位取反运算符

要做位运算,首先要把数值转化为二进制。

计算机在操作数据的时候 都是对补码进行操作的。

& : 将两个数转化成二进制数的补码,然后对应的每一位作与运算。有0则0,做完运算转回原码  最后将这个二进制数转成十进制;

| : 将两个数转化成二进制数的补码,然后对应的每一位作或运算。有1则1,做完运算转回原码  最后将这个二进制数转成十进制;

^ : 将两个数转化成二进制数的补码,然后对应的每一位作异或运算。同0则1.

做完运算转回原码  最后将这个二进制数转成十进制;        某一个数据对另一个数据位异或两次,其结果不变;

~ : 将一个数转化成二进制数补码,然后对每一位取反,即1变0,0变1. 做完运算转回原码  最后将这个二进制数转成十进制;

<<:>

正数扩大为:<

>>:将符号前面的一个数转化成二进制数补码 然后最高位为0补0,为1补1,补符号后面数个数个0或1,将这个数转为原码,在转成十进制数。

正数缩小为:>>前面的数除以2的<>前面的数除以2的<

8b549244b265b0ce4e3686236e8cfed6.png

9a27f0389a947389de11be7b93bcc108.png

>>>:将符号前面的一个数转化成二进制数补码,不管符号位直接在最高位补零。补码转成原码,最后将这数转成十进制。

6.三目运算符(三元运算符)

格式:

(表达式) ?表达式1:表达式2;

表达式的结果为boolean类型。

如果表达式为:true  就把表达式1作为结果。

如果表达式为:false 就把表达式2作为结果。

d5c9a3cf43e086447622d3aa2413c453.png

5d4256aa7898c420ff9d3e9ba43c3071.png


版权声明:本文为weixin_39901404原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。