算术运算符
package com.kuang.operator;
//import com.kuang.base.*; //*是通配符,会导入这个包下所有的类
public class Demo01 {
public static void main(String[] args) {
//二元运算符
//Ctrl+D:复制当前行到下一行
int a=10;
int b=20;
int c=25;
int d=25;
System.out.println(a+b);
System.out.println(a-b);
System.out.println(a*b);
System.out.println(a/(double)b);
}
}
类型转换
package com.kuang.operator;
public class Demo02 {
public static void main(String[] args) {
long a=1232435465L;
int b=243524;
short c=12;
byte d=9;
System.out.println(a+b+c+d);//有long转long
System.out.println(b+c+d);//有int转int
System.out.println(c+d);//!int类型!
}
}
关系运算符
package com.kuang.operator;
public class Demo03 {
public static void main(String[] args) {
int a=12;
int b=13;
int c=21;
System.out.println(c%a);//模运算
System.out.println(a>b);
System.out.println(a<b);
System.out.println(a==b);
System.out.println(a!=b);
}
}
自增/自减运算符
package com.kuang.operator;
public class Demo04 {
public static void main(String[] args) {
int a=3;
int b=a++;//a先赋值再自增
System.out.println(b);//3
System.out.println(a);//4
int c=++a;//a先自增再赋值
System.out.println(c);//5
//幂运算
double pow=Math.pow(2,3);//2^3
System.out.println(pow);
}
}
逻辑运算符
package com.kuang.operator;
public class Demo05 {
public static void main(String[] args) {
//与或非
boolean a=false;
boolean b=true;
System.out.println("a&&b:"+(a&&b));//全真才真
System.out.println("a||b:"+(a||b));//有真即真
System.out.println("!(a&&b):"+(!(a&&b)));//取反
//短路运算:
//与运算时判断出a是false之后直接输出false,略过b
//验证如下:
int c=5;
boolean d=(c<4)&&(c++<4);
System.out.println(d);
System.out.println(c);//c=5说明未执行c++
}
}
位运算符
package com.kuang.operator;
public class Demo06 {
public static void main(String[] args) {
/*位运算:效率高
a=1100 0100
b=0110 1000
a&b=0100 0000 //全1才1
a|b=1110 1100 //有1即1
a^b=1010 1100 //同0异1
~a=0011 1011 //取反
*/
// <<相当于乘2 >>相当于除2
int a=2; //0000 0010=2
int b=a<<3;//0001 0000=16
System.out.println(b);
}
}
赋值运算符 、字符串连接符
package com.kuang.operator;
public class Demo07 {
public static void main(String[] args) {
int a=12;
int b=2;
a+=b;
System.out.println(a);
a-=b;
System.out.println(a);
//字符串连接符:+
System.out.println("!"+a+b);
System.out.println(a+b+"!");//先运算a+b再转换成String类
}
}
三元运算符
package com.kuang.operator;
public class Demo08 {
public static void main(String[] args) {
//x?a:b三元运算符
//x==true,输出a,否则输出b
int a=80;
String type=a>60?"及格":"不及格";
System.out.println(type);
}
}