JAVA基础复习三-逻辑运算符、位运算符和条件语句

来源:互联网 发布:记简谱的软件 编辑:程序博客网 时间:2024/06/06 02:15

一、逻辑运算符与或异或非双与双或

 &逻辑与:有false则false。 |逻辑或:有true则true。 ^逻辑异或:相同为false,不同为true。 !逻辑非:非false则true,非true则false。&&和&的区别?    * a:最终结果一样。    * b:&&具有短路效果。左边是false,右边不执行。    *   &是无论左边是false还是true,右边都会执行   ||和|的区别?    * a:最终结果一样。    * b:||具有短路效果。左边是true,右边不执行。    *   |是无论左边是false还是true,右边都会执行

二、位运算符

* &,|,^,~ 的用法,针对的是二进制* &:有0则0* |:有1则1* ^:相同则0,不同则1* ~:按位取反举例:6&3 = 110 &011 = 010 = 2其中~比较特殊,比如~6 = -7;因为6是int值,32位二进制,先按位取反,得到结果的补码,然后-1得反码,再除了符号位不变取反,得结果的原码,转为十进制即-7。6的二进制    00000000 00000000 00000000 00000110按位取反      11111111 11111111 11111111 11111001-1                11111111 11111111 11111111 11111000补码除符号位取反10000000 00000000 00000000 00000111 = -7 >>,>>>,<<的用法:*  <<:左移    左边最高位丢弃移动位数,右边补齐0*  >>:右移    最高位是0,左边补齐0;最高为是1,左边补齐1*  >>>:无符号右移 无论最高位是0还是1,左边补齐0* 整数向左移动几位,乘以2的几次幂;向右移动几位除以2的几次幂

三元运算符的格式

(关系表达式) ? 表达式1 : 表达式2;前面是一个判断,后面两个是根据判断的结果。switch语句小知识点:* a:case后面只能是常量,不能是变量,而且,多个case后面的值不能出现相同的* b:default可以省略吗?    * 可以省略,但是不建议,因为它的作用是对不正确的情况给出提示。    * 特殊情况:        * case就可以把值固定。        * A,B,C,D* c:break可以省略吗?    * 最后一个可以省略,其他最好不要省略    * 会出现一个现象:case穿透。    * 最终我们建议不要省略* d:default一定要在最后吗?    * 不是,可以在任意位置。但是建议在最后。* e:switch语句的结束条件    * a:遇到break就结束了    * b:执行到switch的右大括号就结束了
阅读全文
0 0