java运算符

java运算符


运算符是一种特殊的符号,用以表示数据的运算、赋值和比较等。

1、算术运算符

运算符运算范例结果
+正号+33
-负号b=4;-b-4
+5+510
-6-24
*3*721
/9/33
%取模(取余)5%21
++自增(前):先运算后取值
自增(后):先取值后运算
a=2;b=++a;
a=2;b=a++;
a=3;b=3
a=3;b=2
自减(前):先运算后取值
自减(后):先取值后运算
a=2;b=–a;
a=2;b=a–;
a=1;b=1
a=1;b=2
+字符串连接“wor”+“ld”“world”
算术运算符的注意问题:
  • ​ 如果对负数取模,可以把模数负号忽略不记,如: 5%-2=1;5%2=1;-5%-2=-1;-5%2=-1。 但被模数是负数则不可忽略。此外,取模运算的结果不一定总是整数。
    ​ 对于除号“/”,它的整数除和小数除是有区别的:整数之间做除法时,只保留整数部分而舍弃小数部分。 例如: int x=3510;x=x/1000*1000; x的结果是 : 3000
  • “+”除字符串相加功能外,还能把非字符串转换成字符串.例如:System.out.println(“5+5=”+5+5); //打印结果是: 5+5=55

2、赋值运算符

  1. 符号: =
    • 当“=”两侧数据类型不一致时, 可以使用自动类型转换或使用强制类型转换原则进行处理。
    • 支持连续赋值。
  2. 扩展赋值运算符: +=, -=, *=, /=, %=

3、比较运算符(关系运算符)

运算符运算范例结果
==相等于9==8false
!=不等于3!=3false
<小于2<1false
>大于1>2false
<=小于等于2<=2true
>=大于等于3>=2true
instanceof检查是否是类的对象“Hello” instanceof Stringtrue
  • 比较运算符的结果都是boolean型,也就是要么是true,要么是false。
  • 比较运算符“==”不能误写成“=” 。

4、逻辑运算符

&逻辑与 |逻辑或 !逻辑非 && 短路与 || 短路或 ^ 逻辑异或

aba&ba&&ba|ba||b!aa^b
truetruetruetruetruetruefalsefalse
truefalsefalsefalsetruetruefalsetrue
falsetruefalsefalsetruetruetruetrue
falsefalsefalsefalsefalsefalsetruefalse
  • 逻辑运算符用于连接布尔型表达式,在Java中不可以写成3<x<6,应该写成x>3 & x<6 。

  • 单&时,左边无论真假,右边都进行运算;
    
    双&时,如果左边为真,右边参与运算,如果左边为假,那么右边不参与运算。 
    
  • “|”和“||”的区别同理, ||表示:当左边为真,右边不参与运算。

  • 异或( ^ )与或( | )的不同之处是:当左右都为true时,结果为false

5、位运算符

运算符运算范例
<<左移3 << 2 = 12 --> 3 * 2 * 2=12
>>右移3 >> 1 = 1 --> 3/2=1
>>>无符号右移3 >>> 1 = 1 --> 3/2=1
&与运算6 & 3 = 2
|或运算6 | 3 = 7
^异或运算6 ^ 3 = 5
~取反运算~6 = -7

位运算是直接对整数的二进制进行的运算

注意运算细节:

  • << :空位补0,被移除的高位丢弃,空缺位补0;
  • >>:被移位的二进制最高位是0,右移后,空缺位补0;最高位是1,空缺位补1;
  • >>>:被移位二进制最高位无论是0或者是1,空缺位都用0补;
  • &:二进制位进行&运算,只有1&1时结果是1,否则是0;
  • | :二进制位进行 | 运算,只有0 | 0时结果是0,否则是1;
  • ^ :相同二进制位进行 ^ 运算,结果是0; 1^1=0 , 0^0=0;不相同二进制位 ^ 运算结果是1。 1^0=1 , 0^1=1 ;
  • ~ :正数取反,各二进制码按补码各位取反;负数取反,各二进制码按补码各位取反 。

6、三元运算符

格式:
(条件表达式)?表达式1:表达式2;
条件表达式为true, 运算后的结果是表达式1;
条件表达式为false, 运算后的结果是表达式2;

注意:表达式1和表达式2为同种类型

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值