当前位置 博文首页 > lz_1014的博客:Java运算符
(1)+;-;*;/;%
也就是一般的加减乘除,外加一个取余。这里需要注意的一个点就是除法,java里面的除法是取整数,意思就是如果一个数没有被除尽也只取它的整数部分。话不多说,上代码
package Review.Operator;
public class OperatorTest {
public static void main(String[] args) {
int a = 3;
int b = 5;
System.out.println(a+b);
System.out.println(a-b);
System.out.println(a*b);
// 整数相除取商数
System.out.println(a/b);
System.out.println(a%b);
// 整数相除只得整数,要得小数必浮点
System.out.println(3.0/5);
System.out.println(5/3.0);
}
}
(2)++;–
++在前,先自加,再赋值
++在后,先赋值,再自加
自减原理相同
package Review.Operator;
public class OperatorTest1 {
public static void main(String[] args) {
int a = 8;
int b = ++a; // b = a +1
System.out.println("b="+b+"-----"+"a="+a);
int d = 8;
int c = d++;
System.out.println("c="+c+"-----"+"d="+d);
}
}
运行结果:
b=9-----a=9
c=8-----d=9
=;+=;-=;*=以及/=
package Review.Operator;
public class OperatorTest2 {
public static void main(String[] args) {
int a = 10;
a += 5; // a = a + 5
System.out.println("a="+a);
// -= *= /= 以此类推
// 隐含了强制转换,“=”右边默认是int类型
// 相当于 b = (b的类型)(b+1)
byte b = 1;
b += 1;
System.out.println("b="+b);
}
}
运行结果:
a=15
b=2
(1)&;|;^;!
有错(false)则错(false)【&】
有对(true)则对(true)【|】
相同则错(false)【^】
不同则对(true)【^】
对就是错(false)【!】
错(false)就是对(true)【!】
package Review.Operator;
public class OperatorTest3 {
public static void main(String[] args) {
int a = 3;
int b = 4;
int c = 5;
System.out.println((a>b)&(a>c)); // 有错则错
System.out.println((a>b)|(a>c)); // 有对则对
System.out.println((a>b)^(a>c)); // 相同则错,不同则对
System.out.println(!(a>b)); // 对就是错,错就是对
}
}
运行结果:
false
false
false
true
(2)&&和||;&&和&(||和|)的区别
&&和&
相同点:结果都一样
不同点:&&有短路效果,若左边为false,则走遍不执行
&无论左边是true或是false,右边都会执行
||和|
相同点:结果都一样
不同点:||有短路效果,若左边为true,则右边不会执行
|无论左边是true或是false,右边都会执行
package Review.Operator;
public class OperatorTest4 {
public static void main(String[] args) {
int a = 4;
int b = 8;
int c = 1;
System.out.println((a>b)&&(a>c));
System.out.println((a>b)||(a>c));
// &&和&的区别
int x = 6;
int y = 7;
int x1 = 6;
int y1 = 7;
System.out.println((x1++>6)&(y1++>7));
System.out.println((x++>6)&&(y++>7));
}
}
运行结果:
false
false
false
true
||和|以此类推。
语法:布尔表达式?表达式1:表达式2
计算布尔表达式的值看是true还是false;若是true则执行表达式1,若是false则执行表达式2
package Review.Operator;
public class OperatorTest5 {
public static void main(String[] args) {
// 如果你有一百万且身体健康,就可以去环游世界,否则好好学习。
String a = "100w";
String b = "身体健康";
if(a.equals("100w") && b.equals("身体健康")) {
System.out.println("我终于可以去环游世界了");
}else {
System.out.println("好好学习吧!");
}
}
}
运行结果:
我终于可以去环游世界了