算数运算符
public class Demo6 {
public static void main(String[] args) {
// ++自增 --自减 一元运算符
//++在后,赋值后自增 ++在前,自增后赋值
//--在后,赋值后自减 --在前,自减后赋值
int a=3;
int b=a++;//执行此行代码后,先给b赋值 再自增
//a=a+1
System.out.println(a);//4
System.out.println(b);//3
//a=a+1
int c=++a;//执行此行代码前,先自增 再赋值
System.out.println(a);//5
System.out.println(b);//3
System.out.println(c);//5
//幂运算 eg:2^3=8 很多运算我们使用工具类来操作
double pow=Math.pow(2,3);
System.out.println(pow);//8
}
}
逻辑运算符
public class Demo7 {
public static void main(String[] args) {
// &&与(and) ||或(or) !非(取反)
boolean a=true;
boolean b=false;
System.out.println("a&&b="+(a&&b));//false 与运算 两个变量都为真结果才为真,反之为假
System.out.println("a||b="+(a||b));//true 或运算 两个变量有一个为真结果为真,都为假结果才为假
System.out.println("!(a&&b)="+!(a&&b));//true 非运算 真变假 假变真
//短路运算
int c=5;
boolean d=(c<4)&&(c++<4);
System.out.println(d);//false
System.out.println(c);//5 判断与运算时第一个条件为假则结果为假,跳过了第二个条件,没有运行c++故还得5
}
}
位运算符详解
A=0011 1100
B=0000 1101
---------------------------
A&B=0000 1100 与运算11得1其余为0
A|B=0011 1101 或运算00得0其余为1
A^B=0011 0001 异或运算相同为0不同为1
~B=1111 0010 取反运算0变1 1变0
public class Demo8 {
public static void main(String[] args) {
//位运算符计算2*8
System.out.println(2<<3);//16
}
}
扩展赋值运算符
//扩展赋值运算符
int a=10;
int b=20;
a+=b;//a=a+b的简写
System.out.println(a);//10+20=30
a-=b;//a=a-b的简写
System.out.println(a);//30-20=10
字符串连接符
//字符串连接符 +
int a=10;
int b=20;
System.out.println(""+a+b);//1020 第一个是String字符串使得整个都为字符串进行连接
System.out.println(a+b+"");//30 第一个是数值运算故整个都是运算
条件运算符
//三元运算符
//x?y:z 如果x为真结果为y,否则结果为z
int score=70;
String type=score>60?"及格":"不及格";
System.out.println(type);//及格