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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Jennifer 中级黑马   /  2014-12-18 00:33  /  1584 人查看  /  13 人回复  /   1 人收藏 转载请遵从CC协议 禁止商业使用本文

1:循环(掌握)
        (1)如果我们发现有很多重复的内容的时候,就该考虑使用循环改                进代码。
           让我们代码看起来简洁了。
        (2)循环的组成
                A:循环体,就是要做的事情。
                B:初始化条件。一般定义的是一个初始变量
                C:判断条件。用于控制循环的结束。
                D:控制条件。用于控制变量的变化。一般都是一个++/--操作。
        (3)循环的分类:
                A:for
                        for(初始化条件;判断条件;控制条件)
                        {
                                循环体;
                        }
                        执行流程:
                                a:先执行初始化条件;
                                b:执行判断条件
                                c:根据判断条件的返回值:
                                        true:执行循环体。
                                        false:就结束循环。
                                d:最后执行控制条件。返回到b继续。
                B:while
                        初始化条件;
                        while(判断条件)
                        {
                                循环体;
                                控制条件;
                        }
                       
                        执行流程:
                                a:先执行初始化条件;
                                b:执行判断条件
                                c:根据判断条件的返回值:
                                        true:执行循环体。
                                        false:就结束循环。
                                d:最后执行控制条件。返回到b继续。
                C:do...while(了解)
                        初始化条件;
                        do{
                                循环体;
                                控制条件;
                        }while(判断条件);
                        执行流程:
                                a:先执行初始化条件;
                                b:执行循环体和控制条件;
                                c:执行判断条件
                                d:根据返回值
                                        true:返回b。
                                        false:就结束循环。
                注意:
                        a:一般使用for循环或者while循环。而且这两种循环是                                可以等价转换的。
                        b:do...while循环至少执行一次循环体。
        (4)案例:(掌握)
                A:请在控制台输出5次"我爱Java"
                B:请在控制台输出1-10的数据。
                C:求1-10的和,改进位求1-100的和。
                D:求1-100之间偶数的和。
                E:求5的阶乘。
/*
需求:求5的阶乘
思路:1. 5的阶乘即5*4*3*2*1
            2.通过观察发现跟1+100有异曲同工之处,即可以通过 for循环来满足
*/
class Demo2
{
        public static void main(String[] args)
        {
                int x=1;
                for (int i = 1; i <=5;i++ )
                {
                        x*=i;
                }
                System.out.println(x);
        }
}
                F:水仙花。
/*
需求:水仙花。
          所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:
          153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。
思路 :1. 所谓"水仙花数"是指一个三位数,从这我们可以看出水仙花数是一个三位数,因此通过for循环来取得三位数的数据
                2.水仙花各位数字立方和等于该数据本身,必须先取的水仙花数各位上的数字,该怎么取数字呢?
                3.通过%与/取得各位上的数字
*/class FlowerDemo
{
        public static void main(String[] args)
        {
                for (int i=100; i<=999 ;i++ )
                {
                        //定义个位
                        int a = i % 10;
                        //定义十位
                        int b = i / 10 % 10;
                        //定义百位
                        int c = i /100  ;
                        // 判断水仙花各位数字立方和是否等于该数据本身
                        if (a * a * a + b * b * b + c * c * c == i )
                        {
                                System.out.println ( i ) ;
                        }
                }
        }
}
                G:统计叠多少次,能叠成珠穆朗玛峰的高度。
/*
需求:统计叠多少次,能叠成珠穆朗玛峰的高度。
思路:1.珠穆朗玛峰高度为884800cm,纸张的厚度为1cm,
          2.折叠多少次,是一个重复的动作,对重复的次数又不明确,用while循环
          3.折叠的次数就是*2,即2的几次幂
*/
class Demo1
{
        public static void main(String[] args)
        {
                int i = 1 ; //纸张厚度初始值为1
                int count = 0;//折叠次数
                while(i<=884800)
                {
                        i = i << 1;//折叠后的厚度 i = i* 2 ;
                        count ++;
                }
                System.out.println(count );
        }
}
        (5)循环嵌套:(理解)
                A:也就是循环语句的循环体是一个循环语句。
                B:通过输出
                        ****
                        ****
                        ****
                  我们不断的改进。发现了一个问题:
                        外循环控制行数,内循环控制列数。
        (6)案例:(理解)
                A:正三角形
                        内循环的判断条件:y<=x
                        for(int x=0; x<5; x++)
                        {
                                for(int y=0; y<=x; y++)
                                {
                                        System.out.print("*");
                                }
                                System.out.println();
                        }
                B:倒三角形
                        内循环的初始化条件:y=x
                        for(int x=0; x<5; x++)
                        {
                                for(int y=x; y<5; y++)
                                {
                                        System.out.print("*");
                                }
                                System.out.println();
                        }
                C:九九乘法表(理解)
               
2:break和continue(掌握)
        (1)有些时候,我们需要对循环进行一些控制终止,这个时候,就出现了两个关键字:
                break和continue
        (2)特点:
                A:它们都必须在循环中(break还可以在switch中。)。
                  一般在循环的判断中。
                B:如果单独使用break和continue,后面是不能有语句的。
        (3)区别:
                A:break 结束当前循环。
                B:continue 结束本次循环,进入下一次循环。
        (4)如何退出嵌套循环:(了解)
                用带标签的循环。
                格式:
                        标签名:for(){
                                        for(){
                                                if()
                                                {
                                                        break 标签名;
                                                }
                                        }
                                }
3:应用场景(理解)
        (1)变量:发现有一个数据是变化的时候,就要用变量。
        (2)if语句:如果是一个范围的判断,boolean类型的表达式的判断,几个数据的判断。
        (3)switch语句:几个数据的判断。一般这种情况,有限选择switch。
        (4)for语句:如果次数或者范围特别明确。(水仙花)
        (5)while语句:如果次数或者范围不明确。(珠穆朗玛峰)

13 个回复

倒序浏览
早就应该进来看看。棒。
回复 使用道具 举报
看得出楼主的笔记很认真
回复 使用道具 举报
估计你是基础班的,我们也许是同学!哈哈
回复 使用道具 举报
楼主总结的好详细,我都没有这样的耐心。
回复 使用道具 举报
前排占座,学习了,
回复 使用道具 举报
应该早点发。。。。。。。
回复 使用道具 举报
Seejun 中级黑马 2015-1-10 23:05:19
8#
赞一下,感谢分享
回复 使用道具 举报
Seejun 中级黑马 2015-1-10 23:06:23
9#
赞一下,感谢分享
回复 使用道具 举报
总结的很细致  想起了高中时代
回复 使用道具 举报
phil 中级黑马 2015-1-11 22:02:29
11#
笔记写的很详细,学习了。。
回复 使用道具 举报
如此详细的笔记,把循环要用的都用了,赞一个
回复 使用道具 举报
总结的好仔细,是基础班的同学吧
回复 使用道具 举报
感谢楼主的分享,笔记做的相当不错了,学习了!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马