【java】基础语法篇-Java运算符(三)

1、算数运算符

假设整数类型变量A的值为:10,变量B的值为:20

运算符描述示例
+加法运算符,第一个操作数加上第二个数操作数A+B结构为30
-减法运算符,从第一个操作数减去第二个操作数A - B结果为:-10
*两个操作数相乘A * B结果为:200
/左操作数除以右操作数返回模值B / A结果为:2
%左操作数除以右操作数返回余数B / A结果为:0
++将操作数的值增加1A++,则A的值为:11
将操作数的值减1A–,则A的值为:9

注意点:

  • 当 int ± char 的时候,char会按照ASCII表被转为数值在相加减。
  • 当String做加法时候,运算会变成字符串拼接,其他类型的数值与其相加也会先转为字符串后进行拼接。
  • ++ -- 自增、自减:a++,++a 一个是先++,一个是后++,虽然这样写,先加后加结果不变,但有些时候这两个有不同结果;
    int a = 0;
    int b = 0;
    b = a++; // a先赋值给b,b=0,a+1=1
    b = ++a; // 先a+1=2,后赋值给b=2
    

2、赋值运算符

运算符描述示例
=简单赋值运算符。 将右侧操作数的值分配给左侧操作数。C = A + B将A + B的值分配给C。
+=相加与赋值运算符。 它将右操作数相加到左操作数并将结果分配给左操作数。C += A等于C = C + A。
-=减去与赋值运算符。 它从左操作数中减去右操作数,并将结果赋给左操作数。C -= A等于C = C - A。
*=乘以与赋值运算符。 它将右操作数与左操作数相乘,并将结果赋给左操作数。C *= A等于C = C * A。
/=除以与赋值运算符。 它将左操作数除以右操作数,并将结果赋给左操作数。C /= A等于C = C / A。
%=模数与赋值运算符。 它使用两个操作数来计算获取模数,并将结果赋给左操作数。C %= A等于C = C % A。
<<=左移与赋值运算符。C <<= 2与C = C << 2相同
>>=右移与赋值运算符。C >>= 2与C = C >> 2相同
&=按位与赋值运算符。C &= 2与C = C & 2相同
^=按位异或和赋值运算符。C ^= 2与C = C ^ 2相同
Ι=按位包含或与赋值运算符。C Ι= 2与C = C Ι=2相同

3、条件运算符

假设变量A的值是10,变量B的值是20.

运算符描述示例
==等于运算符,检查两个操作数的值是否相等,如果相等,则条件变为真。A==B结果为假。
!=不等于运算符,检查两个操作数的值是否不相等,如果不相等,则条件变为真。A!=B结果为真。
>大于运算符,检查左操作数的值是否大于右操作数的值,如果大于,则条件变为真。A>B结果为假。
<小于运算符,检查左操作数的值是否小于右操作数的值,如果小于,则条件变为真。A<B结果为真。
>=大于或等于运算符,检查左操作数的值是否大于等于右操作数的值,如果大于或等于,则条件变为真。A>=B结果为假。
<=小于或等于运算符,检查左操作数的值是否小于或等于右操作数的值,如果小于或等于,则条件变为真。A<=B结果为真。

4、按位运算符

Java定义了几个按位运算符,可以应用于整数类型, 如:long,int,short,char和byte。e按二进制位运算符处理位并执行逐位运算。假设整数变量A=60,变量B=13

运算符描述示例
&二进制AND运算符,如果存在于两个操作数中,则它会将结果复制到结果中。A & B的结果为:12,也就是:0000 1100
Ι二进制OR运算符,如果存在于任一操作数中,则复制一位。A Ι B 的结果为:61,也就是:0011 1101
^二进制异或运算符,如果在一个操作数中设置但不在两个操作数中设置,则复制该位。A ^ B的结果为:49,也就是:0011 0001
~二元一元补充运算符是一元的,具有“翻转”位的效果。~A的结果为:-61,也就是:1100 0011
<<二进制左移运算符,左操作数值向左移动右操作数指定的位数。A << 2的结果为:240,也就是:1111 0000
>>二进制右移运算符,左操作数值向右移动右操作数指定的位数。A >> 2的结果为:15,也就是:1111
>>>右移零填充运算符。 左操作数值向右移动右操作数指定的位数,移位值用零填充。A >>>2的结果为:15,也就是:0000 1111

5、逻辑运算符

假设布尔变量A的值为:true,变量B 的值为:false,则 -

运算符描述示例
&&逻辑AND运算符。 如果两个操作数都不为零,则条件成立。(A && B)结果为:false
ΙΙ逻辑OR运算符。 如果两个操作数中的任何一个非零,则条件变为真。(A ΙΙ B)结果为:true
!逻辑非运算符。用于反转其操作数的逻辑状态。 如果条件为真,则口逻辑NOT运算符将为false。!(A && B)结果为:true

6、条件三元运算符(?😃

int a = 2, b = 8;
int result = 0;
result = a > b? a : b; //判断a>b,真就执行?后面(a)赋值给result,假就执行:后面(b)赋值给result。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值