算术运算符:+,-,*,/,%,++,–.
赋值运算符:=.
package operator;
public class Demo01 {
public static void main(String[] args) {
//二元运算符
//ctrl+D:复制当前行到下一行
int a = 10;
int b = 20;
int c = 60;
int d = 30;
System.out.println(a*b);
System.out.println(a/(double)b);
System.out.println(a+b);
System.out.println(a-b);
}
}
package operator;
public class Demo02 {
public static void main(String[] args) {
double a = 1234564567L;
int b= 345;
short c= 56;
byte d= 3;
System.out.println(a+b+c+d);//long存在,数值就为long类型;double也是
System.out.println(b+c+d);//其余都为int类型
System.out.println(c+d);
}
}
package operator;
public class Demo04 {
public static void main(String[] args) {
//++ -- 自增,自减 一元运算符
int a = 3;
int b = a++;//执行完这行代码后,先给赋值,在自增
int c = ++a;//执行完这行代码后,先自增,在给b赋值
System.out.println(a);
System.out.println(b);
System.out.println(c);
//幂运算(数学工具类)
double pow = Math.pow(3,2);
System.out.println(pow);
}
}
关系运算符:>,<,>=,<=,==,!=instanceof
package operator;
public class Demo03 {
public static void main(String[] args) {
//关系运算符返回的结果:正确,错误 布尔值
//if
int a = 10;
int b = 20;
int c = 31;
System.out.println(c%a);
System.out.println(a>b);
System.out.println(a<b);
System.out.println(a==b);
}
}
逻辑运算符:&&,||,!.
package operator;
//逻辑运算符
public class Demo05 {
public static void main(String[] args) {
//与 或 非
boolean a = true;
boolean b = false;
System.out.println(a&&b);
System.out.println(a||b);
System.out.println(!a&&b);
//短路运算
int c = 4;
boolean d = (c<4)&&(c++<4);
System.out.println(c);
System.out.println(d);
}
}
位运算符:&,|,^,~,>>,<<,>>>(了解)
package operator;
public class Demo06 {
public static void main(String[] args) {
/*
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
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);
}
}
条件运算符:?:
package operator;
//三元运算符
public class demo08 {
public static void main(String[] args) {
//x ? y : z
//如果x==true,则结果为y,否则结果为z。
int score = 60;
String type = score<60?"不及格":"及格";
System.out.println(type);
}
}
扩展赋值运算符:+=,-=,*=,/=。
package operator;
public class Demo07 {
public static void main(String[] args) {
int a = 10;
int b = 20;
a+=b;
a-=b;
System.out.println(a+=b);//30
System.out.println(a-=b);//10
//字符串连接符 + ,String
System.out.println(""+a+b);
System.out.println(a+b+"");
}
}