java运算符

Java运算符

1 基本介绍

Java中的运算符可分为:算数运算符,关系运算符,逻辑运算符,位运算符,赋值运算符和条件运算符。

2 算数运算符

算数运算符包括加(+)、减(-)、乘(*)、除(/)、取余(%),这几个基础的我就不介绍了,说一下这两个++--

这两种运算符都前缀和后缀两种形式,例如:a++++ab----b。前缀形式(++a)是先运算再赋值,后缀形式(a++)是先赋值再运算,代码演示一下区别。

public static void main(String[] args) {
    int a = 1;

    int b = a++;//先把a的赋值给b,然后再对a自增1,所以a=2,b=1
    System.out.println("a:" + a);
    System.out.println("b:" + b);

    System.out.println("======================");
    int c = ++a;//先对a进行自增1,然后再赋值给c,所以a=3,c=3
    System.out.println("a:" + a);
    System.out.println("c:" + c);
}

运行结果如下:

自增演示结果

a----a的情况和++类似。

3 关系运算符

关系运算符:大于(>)、小于(<)、大于等于(>=)、小于等于(<=)、等于(==)、不等于(!=),这些都很好理解,比较简单。

4 逻辑运算符

逻辑运算符:逻辑与(&&)、逻辑或(||)、逻辑非(!)。

逻辑与(&&):表达式中只要有false结果就是false,只有全是true的时候结果才是true。

true && true = true;

true && false = false;

false && true = false;

false && false = false;

逻辑或(||):表达式中只要有true结果就是true,只有全是false的时候结果才是false。

true || true = true;

true || false = true;

false || true = true;

false || false = false;

逻辑非(!):与表达式中的结果相反。

!true = false;

!false = true;

5 位运算符

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

按位与(&):同为同时为1,结果才为1,否则就是0,即0&0=0; 0&1=0; 1&0=0; 1&1=1;

例如:5&3 即 0000 0101 & 0000 0011 = 0000 0001; 因此值为1。

按位或(|):同为同时为0,结果才为0,否则就是1,即0|0=0; 0|1=1; 1|0=1; 1|1=1;

例如:5|3 即 0000 0101 | 0000 0011 = 0000 0111; 因此值为7。

按位取反(~):对二进制数按位取反,将0变1,1变0,即~1=0; ~0=1;

异或(^):参加运算的二进制数,如果相同则为0,不同则为1,即0^0=0; 0^1=1; 1^0=1; 1^1=0;

例如:5^3 即0000 0101 ^ 0000 0011 = 0000 0110; 因此值为6。

右移(>>)和左移(<<):这两个是带符号移动的,左移n位就相当于乘以2的n次方,右移n为相当于除以2的n次方后的整数。左移n为则后面补n个0(正数补0,负数补1),右移n位则去掉末尾n位然后右移前面补0(正数补0,负数补1)。

无符号右移(>>>):无符号右移 与 右移 是一样的,只是无符号右移前面默认补0,而右移则需要看是正数还是负数,整数的首位是0则补0,而负数的首位是1则补1。

6 赋值运算符

赋值运算符主要就是=,很好理解。有一些特殊的赋值运算符,例如a += 123;,即a = a + 123;还有-=、*=、/=、%=、&=、|=等等,计算规则都是类似的。

7 条件运算符

条件运算符就是三目运算符,也称三元运算符。

语法表达式:布尔表达式 ? 表达式1 : 表达式2

运算规则:如果布尔表达式的值为true则返回表达式1的结果,否则返回表达式2的结果。

8 运算符的优先级

优先级按从高到低排序:

优先级描述运算符
1括号() []
2正负号+ -
3自增,自减,非++ – !
4乘除,取余* / %
5加减+ -
6移位运算<< >> >>>
7大小关系> >= < <=
8相等关系== !=
9按位与&
10按位异或^
11按位或|
12逻辑与&&
13逻辑或||
14条件运算?:
15赋值运算= += -= *= /= %=
16位赋值运算&= |= <<= >>= >>>=
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

奔跑吧,高同学

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值