运算符的优先级 算数运算符 赋值运算符

运算符的优先级

优先级描述运算符
1括号(  )            [  ]
2正负号+              -
3自增     自减     非++       --       !
4乘      除     取余*        /       %
5加       减+               -
6移位运算<<      >>      >>>
7大小关系>      >=      <      <=
8相等关系==           !=
9按位与&
10按位异或^
11按位或|
12逻辑与&&
13逻辑或||
14条件运算? :
15赋值运算=    +=    -=    *=    /=    %
16位赋值运算&=    |=    <<=    >>=    >>>=

算数运算符

算数运算符包括:运算规则范例结果
+正号、加+3、2+33、5
+连接字符串“中“+“国”+2020中国2020
-负号、减-3、2-3-3、-1
*2*36
/5/22
%取模5%21
++自增++1,2++2,3
--自减--3,5--2,4


1.加法运算符在连接字符串时要注意,只有直接与字符串相加才会转成字符串。

2.除法“/”当两边为整数时,取整数部分,舍余数。当其中一边为浮点型时,按正常规则相除。

3.“%”为整除取余符号,小数取余没有意义。结果符号与被取余符号相同。

4.整数做被除数,0不能做除数,否则报错。

a++ 与 ++a 的区别:

        在独立运算时,二者并无区别;但是在混合运算时:

                a++是使变量a先把自己的值1,赋值给变量b,此时变量b的值就是1,变量a自己再+1。换句话说就是: a 先进行赋值,再计算 。输出结果: a 的结果是2,b的结果是1。

public static void main(String[] args) {
    int a = 1;
    int b = a++;
    System.out.println(a);//计算结果是2
    System.out.println(b);//计算结果是1
}

 

  

                 ++a 是使变量 a 自己+1 , 再将计算完的结果赋值给变量 b ,换句话说就是: a 先计算 , 再赋值 。 输出结果 : a 和 b 的值都是2。

public static void main(String[] args) {
    int a = 1;
    int b = ++a;
    System.out.println(a);//计算结果是2
    System.out.println(b);//计算结果是2
}

 

赋值运算符 : 将符号右边的值 , 赋值给左边的变量

运算符运算规则范例结果
=赋值int a = 22
+=加后赋值int a=2,a+=24
-=减后赋值int a=2,a-=20
*=乘后赋值int a=2,a*=24
/=整除后赋值int a=2,a/=21
%=取模后赋值int a=2,a%=20

注意 : += 是一个运算符 , 只运算一次 , 并带有强制转换的特点

public static void main(String[] args){
  short s = 1;
  s+=1;
  System.out.println(s);
}

分析: s += 1 逻辑上看作是s = s + 1 计算结果被提升为int类型,再向short类型赋值时发生错误,因为不能将取值范围大的类型赋值到取值范围小的类型。但是,s=s+1进行两次运算+= 是一个运算符,只运算一次,并带有强制转换的特点,也就是说s += 1 就是s = (short)(s + 1),因此程序没有问题编译通过,运行结果是2.

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值