A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 含笑 中级黑马   /  2015-6-26 21:54  /  176 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

位运算符
                <<  左移 -- 相当于乘以2的指定次幂
                >>        右移 -- 相当于除以2的指定次幂
                >>> 无符号右移 -- 正数
               
                面试题: 最有效率的方式计算 3乘以8 -- 3 << 3
               
                &        有0则0,全1才1
                |        有1则1,全0才0
                ^        相同为0,不同为1
                ~        所有的1变0,0变1.
        if语句
                1)
                        if(条件表达式)
                        {
                                // 执行语句
                        }
                2)
                        if(条件表达式)
                        {
                                // 为真,执行语句
                        }
                        else
                        {
                                // 为假,走这.
                        }
                       
                3)
                        if(条件表达式)
                        {
                                // 执行语句
                        }
                        else if (条件表达式)
                        {
                                // 执行语句
                        }
                        ...
                        else
                        {
                                // 执行语句
                        }
                       
                注意:
                        else后面是不跟条件表达式的.
                        最后的else可以省略,具体根据业务逻辑来决定.
                        if...else if...else if... else  这种格式执行特点:一旦有一个匹配,if语句结束,其他的不走了.
                       
        switch语句
                格式:
                        switch(表达式)
                        {
                                case 匹配条件1:
                                        // 执行语句1;
                                        break;
                                case 匹配条件2:
                                        // 执行语句2;'
                                        break;
                                ...
                                default:
                                        // 执行语句;
                                        break;
                        }
                       
                        注意:
                                switch语句执行流程:自上而下,一次匹配每一个case,如果匹配,执行该case下的语句.
                                        如果所有case不匹配,执行default.
                                switch语句的结束条件: 遇到break或者执行到语句末尾.
                       

2.java循环:
                for
                while
                do...while
               
                注意:循环语句减少重复代码是提高了代码的开发(或者说编写)效率,而非程序的执行效率.
                       
3. for循环       
       
        格式:
                for (初始化表达式; 判断语句; 控制条件)
                {
                        // 循环体
                }
       
        执行流程:
                A:先执行初始化表达式。
                B:执行判断条件。
                C:根据判断条件的返回值
                        如果true,执行循环体。
                        如果false,for循环结束。
                D:执行控制条件,接着返回B。

4. 定义变量注意问题.
        使变量的声明周期尽量短.(前提是必须满足业务需求的情况下.)
       
5. while循环
        格式:
                //初始化表达式
                while (判断条件)
                {
                        // 循环体
                        // 控制条件
                }

        while循环和for可以等价转换。
                区别:
                        初始化条件的变量在for结束,以后是不能使用的。
                        而while结束后是可以使用的。

                        如果这个变量仅仅是控制次数的,建议使用for循环。
                        因为这样,for结束,这个变量就结束,效率高。

                什么时候用for,什么时候用while?
                        如果是控制范围,最好用for。
                        如果范围不明确,用while。

6. do...while 循环
        格式:
                // 初始化表达式
                do{
                        // 循环体
                        // 控制语句
                } while (判断条件);
               
               
        do...while循环和其他两种循环的区别是:
                do...while至少执行一次。
                其他的两种循环可能一次都不执行。
                所以如果明确某个重复的动作要必须先做一次,可以使用do...while循环.

               
                练习: 求1-100之间(不含100)的偶数和(5-8分钟)
               
                打印出所有的"水仙花数"。
                所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:
                153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。
                提示:
                1:采用循环取得所有的三位数。(三位数指的是100-999之间的数)。
                2:把每个三位数的个位,十位,百位进行分解。

        获取一个整数每一位值的方法
                int        x = 67890;
                个位: x / 10^0 % 10;
                十位: x / 10^1 % 10;
                百位: x / 10^2 % 10;
                ....
       
7. 循环嵌套
        双层:
                外循环控制行,内循环控制列.
                注意事项: 外循环和内循环的循环变量不能一样.
               
8. 正三角形和倒三角形小练习
        正:
                外循环不变,内循环的判断条件是改变的. -- 依次增加
               
        倒:
                外循环不变,内循环的初始化值发生改变你. -- 依此增加
               
9. 99乘法表
        制表符 "\t"
        回车换行符要根据不同的系统而定:
                windows "\r\n"
                linux        "\n"
                mac                "\r"

10. break 和 continue
        功能:
                用来中断或者跳出循环.
                break -- 结束当前循环. 还可以用在switch语句中.
                continue -- 结束本次循环,进入下次循环.
                一般这两个关键字都是与判断语句一起使用,满足某种条件时执行相应的结束或进入下次的操作.
               
11. 使用标号结束多层循环.
        定义一个标号, 在使用break和continue的时候,后面跟上这个标号就可以了.
        例如:在for的前面定义一个标记A,在多层for循环中如果有满足条件的时候,就可以使用break A直接跳出多层循环。

1 个回复

倒序浏览
多谢分享
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马