运算符
- 算数运算符:+,-,*,/,%,++,–
- 赋值运算符 =
- 关系运算符:>,<,>=,<=,==,!=(不等于)
- 逻辑运算符:$$,||,!
- 位运算符:&,|,^,~,>>,<<,>>> (了解!!!)
- 条件运算符:? :
- 扩展赋值运算符:+=,-=,*=,/=
public class Dame{
public static void main(String[] args){
//++ -- 自增,自减 一元运算符
int a = 3;
int b = a++;//执行完着行代码后,先给c赋值,再自增
//a = a + 1
System.out.println(a);//输出4
a = a + 1
int c = ++a;//执行完着行代码前,先自增,再给c赋值
System.out.println(a)//输出5
System.out.println(b)//输出3
System.out.println(c)//输出5
//幂运算 2^3 2*2*2 = 8 很多运算会使用一些工具类来操作
double pow = Math.pow(2,3);
System.out.println(pow);
}
}
//逻辑运算符
public class Demo2{
public static void main(String[] args){
// 与(and) 或(or) 非(取反)
boolean a = true;
boolean b = false;
System.out.println("a && b: "+(a&&b));//luo逻辑与运算,两个变量都为真,结果才为true
System.out.println("a || b:"+(a||b));//luo逻辑或运算,两个变量有一个为真,结果才为true
System.out.println("! (a && b) :"+!(a&&b));//如果是真则变为假,如果是假则变为真,
//短路运算
int c = 5;
boolean d = (c<4)&&(c++<4); //c<5为假,不会执行后面的,所以c没变,称短路
System.out.println(d); //输出false
System.out.println(c); //输出5
}
}
位运算符
效率极高 !!!
A = 0011 1100
B = 0000 1101
------------------------------------------
A&B = 0000 1100
A|B = 0011 1101
A^B = 0011 0001
~B = 1111 0010
2*8 = 16 2*2*2*2 //
<< 左移相当于*2
>> 右移相当于/2
//三元运算符 ?:
public class Dame {
public static void main(String[] args){
// X ? y : z
//如果x==true,则结果为y,否则为z
int score = 80;
String type = score < 60 ?"不及格":"及格"; //必须掌握
//if语句经常用到
System.out.print(type);
}
}