运算符优先级
比较(主要比较容易混淆的-附代码)
算术运算符与扩展赋值运算符:由于+-顺序不影响结果,我们采用乘法运算进行试验
package operator;
/*
* Title:运算符优先级
* Author:QAAAQ
* */
public class Demo09 {
public static void main(String[] args) {
int a =5;
int b =10;
a+=a*b;
System.out.println(a);
System.out.println(b);
}
}
控制台结果:
结论:先进行乘法运算,在进行扩展赋值运算符的运算;
算数运算符与位运算符:同时比较加法和乘法和位运算符的优先级比较;顺便了解位运算符在不是二的情况下如何进行运算的。
package operator;
/*
* Title:运算符优先级-02-算数运算符与位运算符*/
public class Demo10 {
public static void main(String[] args) {
int a = 2;
int b=3*a<<3;
int c=3+a<<3;
int d=a<<3*3;
int e=a<<3+3;
System.out.println(b);
System.out.println(c);
System.out.println(d);
System.out.println(e);
}
/*实验总结
* 1.位运算:每当出现左移或者右移时,凡位为1的都按移动的位数进行移动,0的不管
* 2.算数运算符与位运算符:由结论得出他们两个只与运算顺序有关,无优先级的差别。*/
}
控制台结果:
结论:代码注解中。
学习视频:B站-狂神说Java