package day.java;
public class OperatorSymbol {
public static void main1(String[] args) {
int a=23;
int b=2;
a+=b;
System.out.println(a);
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 static void main2(String[] args) {
int a=10;
int b=0;
b=a++;//后置++,先把a赋值给b,当表达式结束之后再给a+1
System.out.println(a);
System.out.println(b);
b=++a;//前置++先给a+1,加完之后再把a的值赋给b
System.out.println(a);
System.out.println(b);
b=a--;
System.out.println(a);
System.out.println(b);
b=--a;
System.out.println(a);
System.out.println(b);
}
//关系运算符:不改变操作符的内容,结果只输出boolean类型的值:true/false;
public static void main3(String[] args) {
int a=10;
int b=20;
System.out.println(a==b);
System.out.println(a!=b);
System.out.println(a>=b);
System.out.println(a<=b);
System.out.println(ab);
}
//逻辑与:&&
public static void main4(String[] args) {
int a=1;
int b=2;
System.out.println(a==1&&b==2);
System.out.println(a!=1&&b==2);
System.out.println(a==1&&b!=2);
System.out.println(a!=1&&b!=2);
}
//逻辑或:||
public static void main5(String[] args) {
int a=1;
int b=2;
System.out.println(a==1||b==2);
System.out.println(a!=1||b==2);
System.out.println(a==1||b!=2);
System.out.println(a!=1||b!=2);
}
//逻辑非:!
public static void main6(String[] args) {
int a=1;
int b=2;
System.out.println(!(a==1));
System.out.println(!(a!=1));
}
//逻辑&&和逻辑||会造成短路;
//逻辑&&:第一个表达式不成立,第二个表达式不进行;
//逻辑||:第一个表达式成立,第二个表达式不进行;
public static void main7(String[] args) {
System.out.println(10>20&&10!=10/0);
System.out.println(10<20||0!=10/0);
//在JAVA中我们也可以使用”&“,”|“来表示&&和||,同时避免短路
System.out.println(10>20&10!=10/0);//抛出异常
System.out.println(10<20|0!=10/0);//抛出异常
System.out.println("main end");
}
public static void main(String[] args) {
byte a=100;
byte b=68 ;
System.out.println(a&b);
System.out.println(a|b);
System.out.println(a^b);//按位异或
int c=0xAA;
System.out.println(~c);//按位取反
}
}