![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
Java 学习笔记
莉莉妖_
这个作者很懒,什么都没留下…
展开
-
Java 复合赋值运算符会自动类型转换
我们知道 a += 5 等价于 a = a + 5,假设 a 是 byte 类型,那么 a = a + 5 属于 byte 类型与 int 类型进行运算,最后转换为 int 类型赋值给 byte 类型的 a,这在 Java 中显然是不允许的byte a = 10;// z + 5 转变为 int 类型,赋值给 byte 类型是不允许的// z = z + 5; a += 5; // 复合赋值运算符会进行类型转换,等价于 a = (byte)(a + 5)a++; // a++ 为 a = a +原创 2021-11-14 12:41:23 · 444 阅读 · 0 评论 -
Java 的逻辑运算符 与(&) 或( ) 异或(^)
“与”操作:全真为真“或”操作:全假为假逻辑与 & 和 短路与 &&使用“与”操作,要求所有表达式的判断结果都是 True 才返回真,其余都返回假逻辑与 &:所有条件都会进行判断先判断 a > 10,为 False再判断 ++b > 20,++b = 21 是大于 20 的,为 True“与”操作需要所有条件都是 True 才返回真,因此结果返回假但是逻辑与会将所有条件进行判断,因此 ++b 依旧进行运算,最后打印出 a = 6, b = 21原创 2021-11-14 10:20:39 · 480 阅读 · 0 评论 -
Java 的自增 ++ 与自减 --
++n 前缀形式:先自增后赋值,即返回新值 n + 1n++ 后缀形式:先赋值后自增,即返回旧值 n 后递增 n + 1先自增 a + 1 = 11,后赋值 b = a = 11int a = 10;int b = ++a; System.out.printf("a = %d, b = %d\n", a, b); // a = 11, b = 11先赋值 d = c = 10,后自增 c + 1 = 11int c = 10;int d = c++;System.out.printf("原创 2021-11-14 09:00:22 · 469 阅读 · 0 评论