运算符优先级表:
一、赋值运算符
运算符:【=】 含义:把等于号右边的值赋给左边的变量。 例:
public class test3 {
public static void main(String[] args) {
//赋值运算符:把10赋给a1,15赋给a2,20赋给a3,“阿伟死了”赋给a4。
int a1 = 10;
int a2 = 15;
int a3 = 20;
String a4 = "阿伟死了";
double a5 = 2.5;
System.out.println(a1);
System.out.println(a2);
System.out.println(a3);
System.out.println(a4);
System.out.println(a5);
System.out.println("----以上是赋值运算符的示例----");
}
}
以上代码的输出结果如下图:
二、复合赋值运算符
- 注意:使用复合赋值运算符时,自带强制类型转换。如byte a = 1; a = a+1; 会报错,因为运算时1默认为int类型;但a+=1;不会报错。
运算符:【+=、-=、*=、/=、%=】 含义:略。 例:
public class practice_01 {
public static void main(String[] args) {
int a = 10;
a+=1;//即a=a+1
System.out.println(a);
a-=2;//即a=a-2
System.out.println(a);
a*=3;//即a=a*3
System.out.println(a);
a/=4;//即a=a/4
System.out.println(a);
a%=5;//即a=a%5
System.out.println(a);
}
}
以上代码的输出结果如下图:
三、算数运算符
运算符:【+、-、*、/、%】 含义:略。 例:
public class test3 {
public static void main(String[] args) {
//算术运算符:加、减、乘、除、取余
int b1 = a1 + a2;
//字符串和其它数据使用+运算符,结果是拼接成字符串
String b2 = a1 + a4;
int b3 = a2 - a1;
int b4 = a1 * a2;
//整数和整数整除时,结果为int类型整数
int b5 = a3 / a1;
//整数和整数非整除时,结果为int类型整数,取整数部分,不四舍五入
int b6 = a2 / a1;
//整数和小数相除时,结果为double类型小数
double b7 = a1 / a5;
int b8 = a2 % a1;
System.out.println(b1);
System.out.println(b2);
System.out.println(b3);
System.out.println(b4);
System.out.println(b5);
System.out.println(b6);
System.out.println(b7);
System.out.println(b8);
System.out.println("----以上是算术运算符的示例----");
}
}
以上代码的输出结果如下图:
四、关系运算符
- 注意:比较变量值时的两种比较方法:基本数据类型比较用==(格式:a1==a2),引用数据类型比较用equals(格式:b1.equals(b2))。
运算符:【>、>=、<、<=、==、!=】 含义:略。 例:
public class test3 {
public static void main(String[] args) {
//关系运算符:大于、大于等于、小于、小于等于、等于、不等于(所有关系运算符的结果都是布尔类型)
boolean c1 = a1 > a2;
boolean c2 = a1 >= a2;
boolean c3 = a1 < a2;
boolean c4 = a1 <= a2;
boolean c5 = a1 == a2;
boolean c6 = a1 != a2;
System.out.println(c1);
System.out.println(c2);
System.out.println(c3);
System.out.println(c4);
System.out.println(c5);
System.out.println(c6);
System.out.println("----以上是关系运算符的示例----");
}
}
以上代码的输出结果如下图:
五、自运算符
- 注意:当运算符在变量后面时,先输出后计算;当运算符在变量前面时,先计算后输出;
运算符:【++、- -】 含义:++意为在自身的基础上+1;- -意为在自身的基础上-1。 例:
public class practice_02 {
public static void main(String[] args) {
int a = 1;
a++;//a=a+1
++a;//a=a+1
a--;//a=a-1
--a;//a=a-1
int b = 2;
System.out.println(b++);//结果:2//当运算符在变量后面时,先输出后计算;
System.out.println(++b);//结果:4//当运算符在变量前面时,先计算后输出;
System.out.println(b--);//结果:4
System.out.println(--b);//结果:2
int c = 5;
//c输出 6 6 7 5
//c实际 6 7 6 5
int d = ++c + c++ + c-- + --c;
System.out.println(c);//结果:5(即为最后c输出的值)
System.out.println(d);//结果:24(即为c实际值之和)
}
}
以上代码的输出结果如下图:
六、逻辑运算符
运算符:【&&、||、!】 含义:与、或、非。 例:
public class practice_03 {
public static void main(String[] args) {
//与(并且) &&
//或(或者) ||
//非(取反) !
boolean r1 = true && true; //结果:true
boolean r2 = true && false; //结果:false
boolean r3 = false && false;//结果:false
boolean r4 = true || true; //结果:true
boolean r5 = true || false; //结果:true
boolean r6 = false || false;//结果:false
boolean r7 = !true; //结果:false
boolean r8 = !false; //结果:true
System.out.println(!((23+30%2*3)>12));//结果:false
}
}
以上代码的输出结果如下图:
七、条件运算符(三元运算符)
运算符:【条件?表达式1:表达式2;】 含义:条件为真时,取表达式1的结果,条件为假时,取表达式2的结果。 例:
public class practice_05 {
public static void main(String[] args) {
//条件运算符(三元运算符)
//语法格式:条件?表达式1:表达式2;
//含义:条件为真时,取表达式1的结果,条件为假时,取表达式2的结果。
int a = true?1:2;
int b = false?3:4;
System.out.println(a);//结果:1
System.out.println(b);//结果:4
}
}
以上代码的输出结果如下图:
|