Java运算符

运算符基本分为六类:

算数运算符、赋值运算符、关系运算符、逻辑运算符、位运算符、三元(条件)运算符。

算数运算符

算数运算符,是指在Java运算中,计算数值类型的计算符号,既然是操作数值类型的运算符号,那么就包括整型和浮点型的计算。

求9870(除模取余)
个位:9870%10 = 0
十位:9870/10%10 = 7
百位:9870/100%10 = 8
千位:9870/1000 = 9 

自增:

int a = 4;
a++ 《=====》 a = a+1

++a先加后用
a++先用后加

自减:

int a = 4;
a-- 《=====》 a = a-1

--a先加后用
a--先用后加

重点提示:
1、许多语言中的取模运算只能用于整数型,Java对此做了扩展,它允许对浮点数进行取模操作。例如,3%2 的结果是 1, 15.2%5 的结果是 0.2。取模操作还可以用于负数,结果的符号与第一个操作数的符号相同,例如,5%-3 的结果是 2,-5%3 的结果是-2。
2、“+”不仅可以将非字符串数据相加,还可以有字符串拼接的作用,“+”两侧的操作数中只要有一个是字符串类型,系统会自动将另一个操作数转换为字符串然后再进行连接

赋值运算符

赋值运算符的作用就是将常量、变量或表达式的值赋给某一个变量。

 

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

比较运算符

关系运算符用来比较两个值的关系。关系运算符都是二元运算符,也就是每个运算符都带有两个操作数,运算的结果是一个逻辑值。Java允许“==”和“!=”两种运算符用于任何数据类型。例如,既可以判断两个数的值是否相等,也可以判断对象或数组的实例是否相等。判断实例时比较的是两个对象在内存中的引用地址是否相等。


 

比较运算符的结果都是boolean类型,结果只有true与false

比较运算符“==”不能写成“=”

逻辑运算符

逻辑运算符包括逻辑与(&)、逻辑或(|)和逻辑非(!)。前两个是二元运算符,后一个是一元运算符。

 逻辑与:指的是两者都。
两者都为真结果为真,其他情况都为假。

 逻辑或
只要一个为真结果就为真,全部为假结果为假

逻辑非
取反

位运算符

位运算符用来对二进制位进行操作,包括按位取反(~)、按位与(&)、按位或(|)、异或(^)、右移(>>)、左移(<<)和无符号右移(>>>)。位运算符只能对整数型和字符型数据进行操作。

假设,A=60,B=13;它们的二进制表示如下

        int a=60;//60=0011 1100
		int b=13;//13=0000 1101
		
		System.out.println(a&b);
        //12=0000 1100
		//12的二进制转十进制的方法
		//1的2次方=4,1的3次方=8
		//4+8=12

左移运算符:(二进制A=0011 1100=60)向左移动一位,相当于乘2(0111 1000=60*2=120),向左移动两位,相当于乘2再乘2(1111 0000=60*2*2=240);(十进制A=0011 1100=60)向左移动一位,相当于乘10(60*10=600),向左移动两位,相当于乘10再乘10(60*10*10=6000)。

右移运算符:和左移运算符方向相反。

按位取反运算符翻转操作数的每一位,即0变成1,1变成0。

针对的是一个值

第一次:符号位与数据位全部取反
第二次:对取反后的二进制减一操作
第三次:除符号位以外数据再次取反
60:
第一次:+0011 1100(60)——>-1100 0011
第二次:-1100 0011---->- 1100 0010
第三次:-1100 0010--->-1011 1101(-61)

2的0次方=1,2的2次方=4,2的3次方=8,2的4次方=16,2的5次方=32

-(1+4+8+16+32)=-61
结果:-61

三元(条件)运算符

条件运算符( ? : )也称为 “三元运算符”或“三目运算符”。
语法形式:布尔表达式 ? 表达式1 :表达式2。(a>=b)? a:b
运算过程:如果布尔表达式的值为 true ,则返回 表达式1的值,否则返回 表达式2 的值。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值