黑马程序员技术交流社区

标题: Day3笔记 [打印本页]

作者: lly190144994    时间: 2016-4-19 19:09
标题: Day3笔记
DAY3
1. 逻辑运算符(掌握)
        &        与                有假则假,全真才真
        |        或                有真则真,全假才假
        !        非                取反,真变假,假变真
        ^        异或        相同为假,不同为真
        &&        短路与        结果与&相同
        ||        短路或        结果与|相同
       
        逻辑运算符用于连接布尔型表达式.
        注意:
                1) java中不能写成 1 < x < 9 , 而应该写成 x > 1 & x < 9
                2) & 和 && 的区别:
                        单&时,左边无论真假,右边都会参与运算.
                        双&时,左边为真时,右边才会参与运算;左边为假时,右边不会参与运算,有短路功能.               
                3) | 和 || 的区别同理: 对于双或,左边为真时,右边不会参与运算.
2.条件运算符(三元运算符  三目运算符)
        格式:
                条件表达式 ? 表达式1 : 表达式2;
        求值规则:
                求解条件表达式,根据条件表达式的布尔值决定取值:条件表达式的值为true时取表达式1的值;条件表达式的值为false时取表达式2的值。
        注意事项:
                1) 条件运算符的优先级低于关系运算符和算术运算符,高于赋值运算符。
                2) JAVA中条件运算表达式中的条件表达式值的类型必须为布尔类型,只能是true或false。

3.switch语句
        格式:
                switch(表达式) {
                        case 值1:
                                //执行语句1;
                                break;
                        case 值2:
                                //执行语句2;
                                break;
                        case 值3:
                                //执行语句3;
                                break;
                        ...
                        default:
                                //默认执行语句;
                                break;
               
                }
                表达式允许的数据类型:
                        byte 、 short、 int 、 char
                        jdk5之后增加:枚举
                        jdk7之后增加:String
                       
                执行流程:
                        表达式的值从上往下依次匹配每一个case的值, 如果匹配上,就执行该case的                        执行语句,
                        如果没有匹配,就走default.
               
                结束条件:
                        遇到break或者执行到switch语句的末尾.
                       
                注意事项:
                        a:default整体可以省略吗?
                                可以,但是不建议。
                        b:default的位置可以放到前面吗?
                                可以,但是不建议。
                        c:break可以省略吗?
                                可以,但是不建议。有可能会造成case穿透的效果。
                                default在最后,break是可以省略的。
                                case后面的break可以省略,但是结果可能有问题。
                        d:switch语句什么时候结束呢?
                                就是遇到break或者执行到程序的末尾。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2