第十三天
package operator;
public class Demo03 {
public static void main(String[] args) {
//关系运算符返回的结果: 正确, 错误 布尔值
// if
int a=10;
int b=20;
int c=21;
System.out.println(c%a); //取余,模运算, c/a= 21/10=2...1
System.out.println(a>b);
System.out.println(a<b);
System.out.println(a==b);
System.out.println(a!=b);
//++, -- 自增,自减 一元运算符
int A=3;
int B=A++;//执行完这行代码后,先给B赋值,再自增
//A++ A=A+1
System.out.println(A);
//A=A+1
int C=++A;//执行完这行代码前,先自增,再给C赋值
System.out.println(A);
System.out.println(B);
System.out.println(C);
//幂运算 3^2 3*3=9 2^3 2*2*2=8 很多运算,我们会使用一些工具类来操作
double pow1=Math.pow(3, 2);
double pow2=Math.pow(2, 3);
System.out.println(pow1);
System.out.println(pow2);
//逻辑运算符
// 与(and) 或(or) 非(取反)
boolean e=true;
boolean f=false;
System.out.println("e && f:"+(e&&f));//逻辑与运算:两个变量都为真,结果才为true
System.out.println("e||f:"+(e||f));//逻辑或运算:两个变量有一个为真,结果为true
System.out.println("!(e && f):"+!(e&&f));//如果是真,则为假;如果是假,则为真
//短路运算
int g=5;
boolean h=(g<4)&&(g++<4);//g<4是错的,所以后面不执行
System.out.println(g);
System.out.println(h);
//位运算
/*
G=0011 1100;
H=0000 1101;
--------------------------------------------------------
G&H=0000 1100
G|H=0011 1101
G^H=0011 0001
~H=1111 0010
2*8=16 2*2*2*2
效率极高
<< 左移 *2
>> 右移 \2
0000 0000 0
0000 0001 1
0000 0010 2
0000 0011 3
0000 0100 4
0000 1000 8
0001 0000 16
*/
System.out.println(2<<3);
System.out.println("=======================");
int K=10;
int L=20;
K+=L;//K=K+L
K-=L;//K=K-L
System.out.println(K);
System.out.println(L);
//字符串连接符 + ,String
System.out.println(""+K+L);
System.out.println(K+L+"");
System.out.println("=========================");
//三元运算符
// x ? y : z
//如果x==true, 则结果为y, 否则结果为z
int score=80;
String type = score <60 ?"不及格":"及格";
System.out.println(type);
}
}