++ -- 算术运算
public class Demo9 {
public static void main(String[] args) {
int a = 3;
int b = a++; //先赋值给b,再运行自增。b=3,a=4
int c = ++a; //先运行自增,再赋值给c. a=5,c=5
int d = ++a; //先运行自增,再赋值给d.a=6,d=6
System.out.println(a);//6
System.out.println(b);//3
System.out.println(c);//5
System.out.println(d);//6
}
}
逻辑运算 && || !
public class Demo10 {
public static void main(String[] args) {
// &&:与(and) ||:或(or) !:非(取反)
boolean a = true;
boolean b = false;
System.out.println("a&&b:"+(a&&b)); //逻辑与运算:两个变量都为真,结果才为true
System.out.println("a||b:"+(a||b)); //逻辑或运算:两个变量有一个为真,结果才为true
System.out.println("!(a&&b):"+!(a&&b)); //如果是真,则变为假;如果是假,则变为真。
System.out.println("--------------------------------"); //如果是真,则变为假;如果是假,则变为真。
//短路运算, c&&d 有一个为假,运算就不往下进行了,结果就为false
int c = 5;
boolean d = (c<4)&&(c++>4);
System.out.println(d);//c<4为false,就不会运算后面的c++,所以下面的c输出的是5
System.out.println(c);//5
System.out.println("------------------------------");
int e = 6;
boolean f = (e++>6)&&(e<5);
System.out.println(f);
System.out.println(e);
}
}
位运算、扩展赋值运算符、条件运算符
ublic class Demo1 {
public static void main(String[] args) {
/*
位运算中的 &:与 |:或 ^:异或 ~:取反
A = 0011 1100
B = 0000 1101
-------------------
A&B = 0000 1100 有一个为0则为0,两个都为1则为1
A|B = 0011 1101 有一个为1则为1
A^B = 0011 0001 相同为0,不同为1
~B = 1111 0010 和原来相反 0为1,1为0
*/
/* 2*8=16 2*2*2*2=16
<<左移, >>右移
<< *2
>> /2
0000 0000 0
0000 0001 0
0000 0010 2
0000 0100 4
0000 1000 8
0001 0000 16
*/
System.out.println(2<<3);
//扩展运算符 += —= *= /=
int a = 10;
int b = 20;
a+=b;//a = a+b
a-=b;//a = a-b
System.out.println(a);
System.out.println("--------------------------");
//字符串连接符:+,String
System.out.println(""+a+b);//字符串在前面会把后面的也当做字符 +会把他们连接在一起
System.out.println(a+b+"");//字符串在后面,前面的还是会运算
System.out.println("========================");//字符串在后面,前面的还是会运算
//条件运算符 ?: 三元运算符 x ? y:z 如果x为true,结果为y,否则为z
int x = 80;
String type = x<60? "不及格" : "及格";
System.out.println(type);
}
}
[点击这里有秦疆老师的免费学习Java教程](https://www.bilibili.com/video/BV12J41137hu?p=30&spm_id_from=pageDriver)