1.数学运算(加、减、乘、除、取模、拼接)3.比较运算(大、小、相等、实例类型)4.逻辑运算(与、或、非、异或)5. 三元表达式6. 位运算(二进制计算)(注意理解)《下一篇:循环与控制》《目录:Java渐进式学习》《幕》
1.数学运算(加、减、乘、除、取模、拼接)赋值(=)、正号(+)、负号(-)、加(+)、减(-)、乘(*)、整除(/)、余数(取模)(%)、字符串拼接(+)
“+”与字符串一起连接使用时,表示把非字符串转换成字符串
//1.数学运算
//正2 :2
//负2 :-2
//2加1 :3
//2减1 :1
//2乘1 :2
//2除1 :2
//2对1取模 :0
public static void main(String[] args) {
int a = 0;
a = +2;
System.out.println("正2 :" + a);
a = -2;
System.out.println("负2 :" + a);
a = 2 + 1;
// 当a=2时,可以简写为 a += 1;
System.out.println("2加1 :" + a);
a = 2 - 1;
// 当a=2时,可以简写为 a -= 1;
System.out.println("2减1 :" + a);
a = 2 * 1;
// 当a=2时,可以简写为 a *= 1;
System.out.println("2乘1 :" + a);
a = 2 / 1;
// 当a=2时,可以简写为 a /= 1;
System.out.println("2除1 :" + a);
a = 2 % 1;
// 当a=2时,可以简写为 a %= 1;
System.out.println("2对1取模 :" + a);
3.比较运算(大、小、相等、实例类型)
大于(>),小于(<),等于(==),大于等于(>=),小于等于(<=)实例的类型判断(instanceof)
//比较运算
//a大于b:false
//a小于b:true
//a等于b:false
//a大于等于b:false
//a小于等于b:true
public static void main(String[] args) {
int a = 10;
int b = 20;
System.out.println("a大于b:" + (a > b));
System.out.println("a小于b:" + (a < b));
System.out.println("a等于b:" + (a == b));
System.out.println("a大于等于b:" + (a >= b));
System.out.println("a小于等于b:" + (a <= b));
Object c = 1;
System.out.println("c 是否为 Object的实例: " + (c instanceof Object));// true
System.out.println("c 是否为 String的实例: " + (c instanceof String));// false
System.out.println("c 是否为 Integer的实例: " + (c instanceof Integer));// true
}
4.逻辑运算(与、或、非、异或)
逻辑与 (&)、短路与 (&&)
& 与 && 的结果一致,都表示并且的关系,两边为 true 才为 true
区别在于(& 两边都需要判断)、(&& 如果左边为false,右边就不需要判断了)
//逻辑与 (&)、短路与 (&&)
public static void main(String[] args) {
boolean true_ = true;
boolean false_ = false;
System.out.println("& 与 && 的结果一致,都表示并且的关系,两边为 true 才为 true");
System.out.println("区别在于(& 两边都需要判断)、(&& 如果左边为false,右边就不需要判断了)");
System.out.println("true & false = " + (true_ & false_));//false
System.out.println("false & true = " + (false_ & true_));//false
System.out.println("true & true = " + (true_ & true_));//true
System.out.println("false & false = " + (false_ & false_));//false
System.out.println("true && false = " + (true_ && false_));//false
System.out.println("false && true = " + (false_ && true_));//false
System.out.println("true && true = " + (true_ && true_));//true
System.out.println("false && false = " + (false_ && false_));//false
}
逻辑或(|)、短路或 (||)
| 与 || 的结果一致,都表示或者的关系,一边为 true 就为 true
区别在于(| 两边都需要判断)、(|| 如果左边为true,右边就不需要判断了)
//逻辑或(|)、短路或 (||)
public static void main(String[] args) {
boolean true_ = true;
boolean false_ = false;
System.out.println("| 与 || 的结果一致,都表示或者的关系,一边为 true 就为 true");
System.out.println("区别在于(| 两边都需要判断)、(|| 如果左边为true,右边就不需要判断了)");
System.out.println("true | false = " + (true_ | false_));//true
System.out.println("false | true = " + (false_ | true_));//true
System.out.println("true | true = " + (true_ | true_));//true
System.out.println("false | false = " + (false_ | false_));//false
System.out.println("true || false = " + (true_ || false_));//true
System.out.println("false || true = " + (false_ || true_));//true
System.out.println("true || true = " + (true_ || true_));//true
System.out.println("false || false = " + (false_ || false_));//false
}
逻辑非 (!)
! ,表示 取反
符号右边为 true,取反后结果为:false
符号右边为 false,取反后结果为:truen
//逻辑非 (!)
public static void main(String[] args) {
int a = 1;
int b = 2;
System.out.println("! ,表示 取反");
System.out.println("符号右边为 true,取反后结果为:false");
System.out.println("符号右边为 false,取反后结果为:truen");
System.out.println("a=1 ; b=2 ;如下");
System.out.println("a 等于 b ; 结果:" + (a == b));//false
System.out.println("取反(a 等于 b) ; 结果:" + !(a == b));//true
}
逻辑异或(^)
^ ,表示两边不同结果为 true , 两边相同结果为 false
//逻辑异或(^)
public static void main(String[] args) {
boolean true_ = true;
boolean false_ = false;
System.out.println("^ ,表示两边不同结果为 true , 两边相同结果为 false");
System.out.println("true 异或 false ; 结果:" + (true_ ^ false_));//true
System.out.println("true 异或 true ; 结果:" + (true_ ^ true_));//false
System.out.println("false 异或 false ; 结果:" + (false_ ^ false_));//false
}
5. 三元表达式
三元表达式
($表达式) ? {$1} : {$2};
表达式结果为 true,取第一个值 $1
表达式结果为 false,取第二个值 $2
public static void main(String[] args) {
int a = 1;
int b = 2;
System.out.println("三元表达式---> {$表达式} ? {$1} : {$2}; ");
//例1: 表达式结果为 true,取第一个值 $1
String str_01 = (a > b) ? "a>b 成立" : "a>b 不成立"; //a>b 不成立
System.out.println(str_01 + "n");
//例2: 表达式结果为 false,取第二个值 $2
String str_02 = (a < b) ? "a
6. 位运算(二进制计算)(注意理解)
位运算(二进制计算)
1.转换:先将被计算数,从十进制转化为二进制。
2.改值或位置:然后按运算符号对应的逻辑,直接整体左右移动位置,或者变动每个位的值(0/1)。
3.转换:最后,将得到的二进制位,转换为十进制,得出结果。
位运算左移 (<<) : 左移,左侧丢弃,右侧补0;(左移 x2)右移 (>>) : 右移,右侧丢弃,左侧补相同(原来是0就补0,原来是1就补1);(右移 /2)无符号右移 (>>>) : 右移,右侧丢弃,左侧补0;取反(~) : 按补码各位取反,1变为0;0变为1;
位比较 (0:false ; 1:true ;)与 (并且) (&) : 1&1时结果是1,否则是0;或 (或者) (|) : 0|0时结果是0,否则是1;异或 (不同) (^) :相同位 ^ 运算,结果是0;不同位 ^ 运算结果是1;
// 十进制:[128/0] [64/0] [32/0] [16/0] [8/0] [4/0] [2/0] [1/0]
// 二进制: [1/0] [1/0] [1/0] [1/0] [1/0] [1/0] [1/0] [1/0]
//十进制 : 二进制
// 0: 0000 0000
// 1: 0000 0001
// 2: 0000 0010
// 4: 0000 0100
// 8: 0000 1000
// 16: 0001 0000
// 32: 0010 0000
int a = 0;
a = 8 << 2;
System.out.println("8 << 2 ; 结果=" + a); // 32
a = 8 >> 2;
System.out.println("8 >> 2 ; 结果=" + a);// 2
a = 8 >>> 2;
System.out.println("8 >>> 2 ; 结果=" + a);// 2
a = 8 & 2;
System.out.println("8 & 2 ; 结果=" + a); // 0
a = 8 | 2;
System.out.println("8 | 2 ; 结果=" + a);// 10
a = 8 ^ 2;
System.out.println("8 ^ 2 ; 结果=" + a);// 10
a = ~8;
System.out.println("~8 ; 结果=" + a);// -9
《下一篇:循环与控制》
点击跳转
《目录:Java渐进式学习》
点击跳转
《幕》
留白 —<老吉> ~ 今 ~ ❀ ~ ❀❀❀❀❀❀❀❀❀❀ ❀❀❀❀❀❀❀❀❀❀ ❀❀❀❀❀❀❀



