目录
一、算术运算符
符号 | 说明 |
---|---|
+ | 加法运算符,字符串连接运算 |
- | 减法运算符 |
* | 乘法运算符 |
/ | 除法运算符 |
% | 取模运算符,两个数字相除,取余数 |
++ | 变量自身+1 |
-- | 变量自身-1 |
注意事项
一旦运算当中具有不同类型的数据,那么结果的类型将是数据类型大的那种。
示例
public class MyArithmeticOperator {
public static void main(String[] args) {
//加法运算
int x1 = 1;
int y1 = 2;
String a = "Hello";
String b = "World";
int resoult1 = x1 + y1;
System.out.println(x1 + " + " + y1 + " = " + resoult1);
System.out.println("字符串a = " + a);
System.out.println("字符串b = " + b);
System.out.println("字符串a + 字符串b = " + (a + b));
System.out.println("---------------分割线---------------");
//减法运算
int x2 = 1;
int y2 = 2;
int resoult2 = x2 - y2;
System.out.println(x2 + " - " + y2 + " = " + resoult2);
System.out.println("---------------分割线---------------");
//除法运算
int x3 = 6;
int y3 = 2;
int resoult3 = x3 / y3;
System.out.println(x3 + " / " + y3 + " = " + resoult3);
System.out.println("---------------分割线---------------");
//取模运算
int x4 = 3;
int y4 = 2;
int resoult4 = x4 % y4;//resoult4=1
System.out.println(x4 + " % " + y4 + " = " + resoult4);
System.out.println("---------------分割线---------------");
//自增++运算
int one = 1;
System.out.println("自增前:" + one);
one++;
System.out.println("自增后:" + one);
System.out.println("---------------分割线---------------");
//自减--运算
int two = 2;
System.out.println("自减前:" + two);
two--;
System.out.println("自减后:" + two);
}
}
二、赋值运算符
符号 | 说明 |
---|---|
= | 赋值符号 |
+= | 加等号。a += b相当于a = a + b |
-= | 减等号。a - = b相当于a = a - b |
*= | 乘等号。a *= b相当于a = a * b |
/= | 除等号。a /= b相当于a = a / b |
%= | 取模等号。a %= b相当于a = a % b |
public class MyAssignmentOperator {
public static void main(String[] args) {
//赋值运算
int x1;
//System.out.println(x1);//变量未赋值,不能使用
x1 = 1;//将整数“1”赋值给变量“x1”
System.out.println("x1 = " + x1);
System.out.println("---------------分割线---------------");
//加等运算
int x2 = 1;
x2 += 3;//相当于x2 = x2 + 3;
System.out.println("x2 = " + x2);
System.out.println("---------------分割线---------------");
//减等运算
int x3 = 6;
x3 -= 3;//相当于x3 = x3 - 3;
System.out.println("x3 = " + x3);
System.out.println("---------------分割线---------------");
//乘等运算
int x4 = 1;
x4 *= 3;//相当于x4 = x4 * 3;
System.out.println("x4 = " + x4);
System.out.println("---------------分割线---------------");
//除等运算
int x5 = 6;
x5 /= 3;//相当于x5 = x5 / 3;
System.out.println("x5 = " + x5);
System.out.println("---------------分割线---------------");
//取模等运算
int x6 = 7;
x6 %= 3;//相当于x6 = x6 % 3;
System.out.println("x6 = " + x6);
System.out.println("---------------分割线---------------");
}
}
三、比较运算符
符号 | 说明 |
---|---|
== | 比较符号两边的数据是否相等,相等结果为true |
< | 比较符号左边的数据是否小于右边的数据,如果小于,结果为true |
> | 比较符号左边的数据是否大于右边的数据,如果大于,结果为true |
<= | 比较符号左边的数据是否小于或等于右边的数据,如果小于或等于,结果为true |
>= | 比较符号左边的数据是否大于或等于右边的数据,如果大于或等于,结果为true |
! | 不等符号,如果符号两边数据不相等,结果为true |
注意事项
1)比较运算符的结果一定是一个boolean值,成立为true,不成立为false。
2)如果进行多次判断,不能连续写。
public class MyComparisonOperator {
public static void main(String[] args) {
int a = 1;
int b = 3;
int c = 5;
//相等运算
System.out.println(a==b);//false
System.out.println(a==1);//true
System.out.println("---------------分割线---------------");
//小于运算
System.out.println(a<b);//true
System.out.println(c<b);//false
System.out.println("---------------分割线---------------");
//大于运算
System.out.println(a>b);//false
System.out.println(c>b);//true
System.out.println("---------------分割线---------------");
//小于等于运算
System.out.println(a<=b);//true
System.out.println(c<=b);//false
System.out.println("---------------分割线---------------");
//大于等于运算
System.out.println(a>=b);//false
System.out.println(c>=b);//true
System.out.println("---------------分割线---------------");
//取非运算
System.out.println(!(a<b));//false
System.out.println(!(c<b));//true
}
}
四、逻辑运算符
符号 | 说明 |
---|---|
&&与(并且) | 符号两边逻辑值全为true,结果才是true;否则,结果就是false |
||或(或者) | 符号两边逻辑值至少有一个是true,结果就是true;全为false,结果才是false |
!非(取反) | 对原本的逻辑值进行取相反值 |
“&&”,“||”具有短路效果:如果根据左边已经可以判断得到的最终结果,那么右边的代码将不会被执行,从而节省一定的性能。
public class MyLogicalOperator {
public static void main(String[] args) {
int a = 1;
int b = 1;
int c = 2;
// &&与(并且)
System.out.println(((a==b)&&(a==1)));//true
System.out.println(((a==b)&&(a==c)));//false
System.out.println("---------------分割线---------------");
// ||或(或者)
System.out.println(((a==b)||(a==1)));//true
System.out.println(((a==b)||(a==c)));//true
System.out.println("---------------分割线---------------");
// !非(取反)
System.out.println(!((a==b)&&(a==1)));//false
System.out.println(!((a==b)&&(a==c)));//true
}
}
五、三元运算符
种类 | 说明 | 示例 |
---|---|---|
一元运算符 | 只需要一个数据就可以进行操作的运算符 | 自增++、自减--、取反! |
二元运算符 | 需要两个数据才可以进行操作的运算符 | 赋值=、四则运算 |
三元运算符 | 需要三个数据才可以进行操作的运算符 | 逻辑比较 |
格式
数据类型 变量名称 = 条件判断?表达式A:表达式B;
三元运算符也称三目运算符,与if语句作用相似。
注意事项
1)必须同时保证条件A和条件B都满足左侧数据类型的要求。
2)三元运算符的结果必须把被使用。
public class MyTernaryOperator {
public static void main(String[] args) {
int a = 1;
int b = 2;
boolean one = true;
boolean two = false;
boolean b1 = a<b?one:two;
System.out.println(b1);
}
}