- 算术运算符
单目:+(取正)-(取负) ++(自增1) - -(自减1)
双目:+ - * / %(取余)
三目:a>b?true:false 说明:当a大于b的时候,为true(也就是冒号之前的值),否则为false;这整个运算符包括一个关系运算符(可以是“>”"<""!="等等),一个“?”,一个“:”,冒号前后需要有两个表达式或者是值或者是对象。
package day2;
public class Operator {
public static void main(String[] args) {
int num1 = 5;
int num2 = 6;
int i = 0;
int result;
// 加法
result = num1 + num2;
System.out.println("加法:" + result);
// 减法
result = num1 - num2;
System.out.println("减法:" + result);
// 乘法
result = num1 * num2;
System.out.println("乘法:" + result);
// 除法(取整)
result = num2 / num1;
System.out.println("除法(取整):" + result);
// 取余
result = num2 % num1;
System.out.println("取余:" + result);
// 自增
i = 1;
result = (i++) + num1;// 先运算再自增
System.out.println("result=" + result + " i=" + i);
i = 1;
result = (++i) + num1;// 先自增再运算
System.out.println("result=" + result + " i=" + i);
// 自减
i = 1;
result = (i--) + num1;// 先运算再自减
System.out.println("result=" + result + " i=" + i);
i = 1;
result = (--i) + num1;// 先自减再运算
System.out.println("result=" + result + " i=" + i);
//三元运算
System.out.println(num1>num2?true:false);
}
}
加法:11
减法:-1
乘法:30
除法(取整):1
取余:1
result=6 i=2
result=7 i=2
result=6 i=0
result=5 i=0
false
赋值运算符
将一个值赋给一个变量,从右往左运算
package day2;
public class OperatorTest1 {
public static void main(String[] args) {
int a;
a = 1;// 赋值
// 加等于
a += 3;
System.out.println("加等于:" + a);
// 减等于
a -= 3;
System.out.println("减等于:" + a);
// 乘等于
a *= 3;
System.out.println("乘等于:" + a);
// 除等于
a /= 3;
System.out.println("除等于:" + a);
// 模等于
a %= 3;
System.out.println("模等于:" + a);
}
}
运行结果:
加等于:4
减等于:1
乘等于:3
除等于:1
模等于:1
关系运算符
比较两边的的操作数,结果为Boolean型
等于符号:==,不等于符号:!= ,大于符号:>, 小于符号:<,大于等于符号:>= ,小于等于符号:<= 。
package day2;
public class OperatorTest2 {
public static void main(String[] args) {
int a=3;
int b=5;
System.out.println("a==b : "+(a==b));
System.out.println("a!=b : "+(a!=b));
System.out.println("a>=b : "+(a>=b));
System.out.println("a<=b : "+(a<=b));
System.out.println("a>b : "+(a>b));
System.out.println("a<b : "+(a<b));
}
}
运行结果:
a==b : false
a!=b : true
a>=b : false
a<=b : true
a>b : false
a<b : true
逻辑运算符
用于对Boolean型结果的表达式进行运算,运算结果为Boolean型。
package day2;
/**
* 逻辑运算符
*
* @author zxh
*
*/
public class OperatorTest3 {
public static void main(String[] args) {
boolean a = true;
boolean b = false;
// 与运算,两边都同时计算后再做&运算,当两边都为true时,结果为true
System.out.println("a&b : " + (a & b));
// 或运算,两边都同时计算后再做|运算,当一边为true时,结果为true
System.out.println("a|b : " + (a | b));
// 异或运算,相同为false,不同为true
System.out.println("a^b : " + (a ^ b));
// 非运算
System.out.println("a&b : " + (!b));
//短路与,先计算左边,在计算右边,当一方为false时,结果为false
System.out.println("a&&b : " + (a && b));
//短路或,先计算左边,在计算右边,当一方为true时,结果为true
System.out.println("a||b : " + (a || b));
}
}
运行结果:
a&b : false
a|b : true
a^b : true
a&b : true
a&&b : false
a||b : true
单目:+(取正)-(取负) ++(自增1) - -(自减1)
双目:+ - * / %(取余)
三目:a>b?true:false 说明:当a大于b的时候,为true(也就是冒号之前的值),否则为false;这整个运算符包括一个关系运算符(可以是“>”"<""!="等等),一个“?”,一个“:”,冒号前后需要有两个表达式或者是值或者是对象。
package day2;
public class Operator {
public static void main(String[] args) {
int num1 = 5;
int num2 = 6;
int i = 0;
int result;
// 加法
result = num1 + num2;
System.out.println("加法:" + result);
// 减法
result = num1 - num2;
System.out.println("减法:" + result);
// 乘法
result = num1 * num2;
System.out.println("乘法:" + result);
// 除法(取整)
result = num2 / num1;
System.out.println("除法(取整):" + result);
// 取余
result = num2 % num1;
System.out.println("取余:" + result);
// 自增
i = 1;
result = (i++) + num1;// 先运算再自增
System.out.println("result=" + result + " i=" + i);
i = 1;
result = (++i) + num1;// 先自增再运算
System.out.println("result=" + result + " i=" + i);
// 自减
i = 1;
result = (i--) + num1;// 先运算再自减
System.out.println("result=" + result + " i=" + i);
i = 1;
result = (--i) + num1;// 先自减再运算
System.out.println("result=" + result + " i=" + i);
//三元运算
System.out.println(num1>num2?true:false);
}
}
加法:11
减法:-1
乘法:30
除法(取整):1
取余:1
result=6 i=2
result=7 i=2
result=6 i=0
result=5 i=0
false
赋值运算符
将一个值赋给一个变量,从右往左运算
package day2;
public class OperatorTest1 {
public static void main(String[] args) {
int a;
a = 1;// 赋值
// 加等于
a += 3;
System.out.println("加等于:" + a);
// 减等于
a -= 3;
System.out.println("减等于:" + a);
// 乘等于
a *= 3;
System.out.println("乘等于:" + a);
// 除等于
a /= 3;
System.out.println("除等于:" + a);
// 模等于
a %= 3;
System.out.println("模等于:" + a);
}
}
运行结果:
加等于:4
减等于:1
乘等于:3
除等于:1
模等于:1
比较两边的的操作数,结果为Boolean型
等于符号:==,不等于符号:!= ,大于符号:>, 小于符号:<,大于等于符号:>= ,小于等于符号:<= 。
package day2;
public class OperatorTest2 {
public static void main(String[] args) {
int a=3;
int b=5;
System.out.println("a==b : "+(a==b));
System.out.println("a!=b : "+(a!=b));
System.out.println("a>=b : "+(a>=b));
System.out.println("a<=b : "+(a<=b));
System.out.println("a>b : "+(a>b));
System.out.println("a<b : "+(a<b));
}
}
运行结果:
a==b : false
a!=b : true
a>=b : false
a<=b : true
a>b : false
a<b : true
逻辑运算符
package day2;
/**
* 逻辑运算符
*
* @author zxh
*
*/
public class OperatorTest3 {
public static void main(String[] args) {
boolean a = true;
boolean b = false;
// 与运算,两边都同时计算后再做&运算,当两边都为true时,结果为true
System.out.println("a&b : " + (a & b));
// 或运算,两边都同时计算后再做|运算,当一边为true时,结果为true
System.out.println("a|b : " + (a | b));
// 异或运算,相同为false,不同为true
System.out.println("a^b : " + (a ^ b));
// 非运算
System.out.println("a&b : " + (!b));
//短路与,先计算左边,在计算右边,当一方为false时,结果为false
System.out.println("a&&b : " + (a && b));
//短路或,先计算左边,在计算右边,当一方为true时,结果为true
System.out.println("a||b : " + (a || b));
}
}
运行结果:
a&b : false
a|b : true
a^b : true
a&b : true
a&&b : false
a||b : true