自增自减运算符
后加加:先用后加
先加加:先加后用
public class KV{
public static void main(String args[]){
int a=10;
int b=a++;
System.out.println(a);
System.out.println(b);
int c=10;
int d=++c;
System.out.println(c);
System.out.println(d);
}
}
赋值运算符:将左边和右边进行处理,然后再把结果赋值给左边
= += -= *= /= %=
细节:底层都隐藏了强制类型转换
public class KV{
public static void main(String args[]){
int a=10;
int b=20;
a+=b;
System.out.println(a);
a-=b;
System.out.println(a);
a*=b;
System.out.println(a);
a/=b;
System.out.println(a);
}
}
public class KV{
public static void main(String args[]){
short a=1;
a+=1;//等同于 a = (short)(a+1)
System.out.println(a);
}
}
关系/比较运算符:结果均为布尔类型
== != > < >= <=
public class KV{
public static void main(String args[]){
int a=10;
int b=10;
int c=20;
System.out.println(a==b);
System.out.println(a==c);
System.out.println(a!=b);
System.out.println(a!=c);
}
}
练习:您和您的约会对象再餐厅里面正在约会
键盘录入两个整数,表示你和你的约会对象衣服的时髦度(手动录入0~10之间的整数,不能录其他)
如果你的时髦程度大于你对象的时髦程度,相亲就成功,输出true,否则输出false
import java.util.Scanner;
public class KV{
public static void main(String args[]){
Scanner sc = new Scanner(System.in);
System.out.println("请输入我们自己的衣服时髦度");
int a = sc.nextInt();
System.out.println("请输入约会对象的衣服时髦度");
int b = sc.nextInt();
boolean result = a>b;
System.out.println(result);
}
}
逻辑运算符
符号 | 作用 | 说明 |
---|---|---|
& | 与(且) | 真真为真 |
| | 或 | 有真为真、假假为假 |
^ | 异或 | 同为false,异为true |
! | 非 | 取反 |
&
public class KV{
public static void main(String args[]){
System.out.println(true&true);
System.out.println(true&false);
System.out.println(false&true);
System.out.println(false&false);
}
}
|
public class KV{
public static void main(String args[]){
System.out.println(true|true);
System.out.println(true|false);
System.out.println(false|true);
System.out.println(false|false);
}
}
^
public class KV{
public static void main(String args[]){
System.out.println(true^true);
System.out.println(true^false);
System.out.println(false^true);
System.out.println(false^false);
}
}
!
public class KV{
public static void main(String args[]){
System.out.println(!true);
System.out.println(!false);
}
}
短路逻辑运算符
短路与&&:左边为false,右边不会执行,结果一定为false
public class KV{
public static void main(String args[]){
int a = 10;
int b = 10;
boolean result = ++a<5&&++b<5;
System.out.println(result);
}
}
//false
短路或||:左边为true,右边不会执行,结果一定为true
public class KV{
public static void main(String args[]){
int a = 10;
int b = 10;
boolean result = ++a<12||++b<12;
System.out.println(result);
System.out.println(a);
System.out.println(b);
}
}
练习:数字6
键盘录入两个整数,如果其中一个为6,输出true;如果它们的的和为6的倍数,输出true,其他情况输出false
import java.util.Scanner;
public class KV{
public static void main(String args[]){
Scanner sc = new Scanner(System.in);
System.out.println("请输入第一个整数");
int a = sc.nextInt();
System.out.println("请输出第二个整数");
int b = sc.nextInt();
boolean result = a==6||b==6||(a+b)%6==0;
System.out.println(result);
}
}