黑马程序员——循环结构和方法

——Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ——-

02.01Java语言基础(循环结构概述和for语句的格式及其使用)

A:什么是循环结构
    循环语句可以在满足循环条件的情况下,反复执行某一段代码,这段被重复执行的代码被称为循环体语句,当反复执行这个循环体时,
    需要在合适的时候把循环判断条件修改为false,从而结束循环,否则循环将一直执行下去,形成死循环
B:循环结构的分类
    for循环
    while循环
C:循环结构for语句的格式:
    for(初始化表达式语句;判断条件语句;控制条件语句) {
        循环体语句;
    }
D:执行流程:
    a:执行初始化语句
    b:执行判断条件语句,看其返回值是true还是false
        如果是true,就继续执行
        如果是false,就结束循环
    c:执行循环体语句;
    d:执行控制条件语句
    e:回到B继续。    
E: 注意事项:
    初始化表达式语句只执行一次

02.02_Java语言基础(循环结构for语句的练习之获取数据)

A:案例演示
    需求:请在控制台输出数据10-1
class ForTest2 {

    public static void main(String[] args) {

        // 请在控制台输出数据10-1
        // 原始做法
        System.out.println(10);
        System.out.println(9);
        System.out.println(8);
        System.out.println(7);
        System.out.println(6);
        System.out.println(5);
        System.out.println(4);
        System.out.println(3);
        System.out.println(2);
        System.out.println(1);

        System.out.println("****************");

        // 使用循环改进
        for(int x = 10 ; x >= 1 ; x--){
            System.out.println(x);
        }

    }
}
B:注意事项
    a:判断条件语句无论简单还是复杂结果是boolean类型。
    b:循环体语句如果是一条语句,大括号可以省略;如果是多条语句,大括号不能省略。建议永远不要省略。
    c:一般来说:有左大括号就没有分号,有分号就没有左大括号

02.03_Java语言基础(循环结构for语句的练习之水仙花)

A:案例演示
    需求:在控制台输出所有的”水仙花数”

    所谓的水仙花数是指一个三位数,其各位数字的立方和等于该数本身。
    举例:153就是一个水仙花数。
    153 = 1*1*1 + 5*5*5 + 3*3*3 = 1 + 125 + 27 = 153
    class ForTest5 {

    public static void main(String[] args) {

        // 完成一下
        for(int x = 100 ; x <= 999 ; x++){

            // 获取当前数的每一位数
            int ge = x%10 ;
            int shi = x/10%10 ;
            int bai = x/10/10%10 ;

            // 获取立方和
            int y = ge*ge*ge + shi*shi*shi + bai*bai*bai ;

            // 判断当前的数是否与y相等,如果相等就是水仙花数
            if(x == y){
                System.out.println(x);
            }
        }   
    }
}

02.04_Java语言基础(循环结构while语句的格式和基本使用)

A:循环结构while语句的格式:
    while循环的基本格式:
        while(判断条件语句) {
            循环体语句;
        }
    完整格式:
        初始化语句;
        while(判断条件语句) {
             循环体语句;
             控制条件语句;
        }
B:执行流程:
    a:执行初始化语句
    b:执行判断条件语句,看其返回值是true还是false
        如果是true,就继续执行
        如果是false,就结束循环
    c:执行循环体语句;
    d:执行控制条件语句
    e:回到b继续。
C:案例演示
    需求:在控制台输出10次"helloworld"
class DeadLoopDemo {

    public static void main(String[] args) {

        // 在控制台输出10次"HelloWorld"
        // for循环实现
        /*
        for(int x = 1 ; x <= 10 ; ){
            System.out.println("HelloWorld");
        }
        */

        // 使用while循环实现
        /*
        int x = 1 ;
        while(x <= 10){
            System.out.println("HelloWorld");
            // x++ ;
        }

02.05_Java语言基础(循环结构do…while语句的格式和基本使用)

A:循环结构do...while语句的格式:
    do {
        循环体语句;
    }while(判断条件语句);

    完整格式;
        初始化语句;
        do {
            循环体语句;
            控制条件语句;
        }while(判断条件语句);
B:执行流程:
    a:执行初始化语句;
    b:执行循环体语句;
    c:执行控制条件语句;
    d:执行判断条件语句,看其返回值是true还是false
        如果是true,就继续执行
        如果是false,就结束循环
    e:回到b继续。
C:案例演示
    需求:在控制台输出10次"helloworld"
class DeadLoopDemo {

    public static void main(String[] args) {

        // 在控制台输出10次"HelloWorld"
        // for循环实现
        /*
        for(int x = 1 ; x <= 10 ; ){
            System.out.println("HelloWorld");
        }
        */

        // 使用while循环实现
        /*
        int x = 1 ;
        while(x <= 10){
            System.out.println("HelloWorld");
            // x++ ;
        }
        */
    }
}

02.06_Java语言基础(循环结构三种循环语句的区别)

三种循环语句的区别:
    (1):do...while循环至少执行一次循环体。
        而for,while循环必须先判断条件是否成立,然后决定是否执行循环体语句。
    (2):A: 如果你想在循环结束后,继续使用控制条件的那个变量,用while循环,否则用for循环。不知道用for循环。
            因为变量及早的从内存中消失,可以提高内存的使用效率。
        B:建议优先考虑for循环,然后是while循环 ,最后是do...while循环

02.07_Java语言基础(循环结构注意事项之死循环)

A:一定要注意控制条件语句控制的那个变量的问题,不要弄丢了,否则就容易死循环。
B:两种最简单的死循环格式
    while(true){...}
    for(;;){...}

02.08_Java语言基础(循环结构循环嵌套输出4行5列的星星)

A:案例演示
    需求:请输出一个4行5列的星星(*)图案。
    如图:
        *****
        *****
        *****
        *****
    注意:
        System.out.println("*");和System.out.print("*");的区别
package reflect;

public class Test7 {

        public static void main(String[] args) {

            // 请输出一个4行5列的星星(*)图案。
            // 原始做法
            System.out.println("*****");
            System.out.println("*****");
            System.out.println("*****");
            System.out.println("*****");

            System.out.println("-----------");



            // 使用循环在进行改进
            for(int y = 1 ; y <= 4 ; y++){
                for(int x = 1 ; x <= 5 ; x++){
                    System.out.print("*");
                }
                System.out.println();
            }
        }
    }
B:结论:
    外循环控制行数,内循环控制列数

02.09_Java语言基础(循环结构循环嵌套输出正三角形)

A:案例演示
    需求:请输出下列的形状
    *
    **
    ***
    ****
    *****
// 外循环控制行数,内循环控制列数
        // 在控制台输出4行5列的*
        for(int x = 1 ; x <= 4 ; x++){
            for(int y = 1 ; y <= 5 ; y++){
                System.out.print("*");
            }
            System.out.println();
        }

        System.out.println("-----------");

        /*
            *           第一行一个*   for(int y = 1 ; y <= 1 ; y++)
            **          第二行二个*    for(int y = 1 ; y <= 2 ; y++)
            ***         第三行三个*    for(int y = 1 ; y <= 3 ; y++)
            ****        第四行四个*   for(int y = 1 ; y <= 4 ; y++)
            *****       第五行五个*   for(int y = 1 ; y <= 5 ; y++)
        */
        for(int x = 1 ; x <= 5 ; x++){
            for(int y = 1 ; y <= x ; y++){
                System.out.print("*");
            }
            System.out.println();
        }

02.10_Java语言基础(控制跳转语句break语句)

A:什么是控制跳转语句
    前面我们已经说过了,Java中的goto是保留字,目前不能使用。虽然没有goto语句可以增强程序的安全性,但是也带来很多不便,
    比如说,我想在某个循环执行到某一步的时候就结束,现在就做不了这件事情。
    为了弥补这个缺陷,Java就提供了break,continue和return来实现控制语句的跳转和中断。
B:控制跳转语句的分类
    break 中断
    continue 继续
    return 返回 
C:break的使用场景
    (1):在选择结构switch语句中
    (2):在循环语句中
    注意:离开使用场景的存在是没有意义的
D:作用
    a:退出单层循环
    b:退出多层循环(几乎不使用)
        要想实现这个效果,就必须知道一个东西;带标签的语句;
        格式:标签名:语句

02.11_Java语言基础(控制跳转语句continue语句)

A:continue的使用场景
    (1):在循环语句中
    (2):离开使用场景的存在是没有意义的

B:作用
    a:跳出一次循环,执行下一步操作

02.12:方法

(1)方法:就是完成特定功能的代码块。
    注意:在很多语言里面有函数的定义,而在Java中,函数被称为方法。
(2)格式:
    修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2...) {
        方法体语句;
        return 返回值;
    }

    修饰符:目前就用 public static。后面再详细讲解其他修饰符
    返回值类型:就是功能结果的数据类型
    方法名:就是起了一个名字,方便调用该方法。
    参数类型:就是参数的数据类型
    参数名:就是变量
    参数分类:
        实参:实际参与运算的数据
        形参:方法上定义的,用于接收实际参数的变量
    方法体语句:就是完成功能的代码块
    return:结束方法
    返回值:就是功能的结果,由return带给调用者。
(3)两个明确:
    返回值类型:结果的数据类型
    参数列表:参数的个数及对应的数据类型
(4)方法调用
    A:有明确返回值的方法
        a:单独调用,没有意义
        b:输出调用,不是很好,因为我可能需要不结果进行进一步的操作。
        c:赋值调用,推荐方案
    B:void类型修饰的方法
        a:单独调用
(5)方法的注意事项
    A:方法不调用不执行
    B:方法之间是平级关系,不能嵌套定义
    C:方法定义的时候,参数是用,隔开的
    D:方法在调用的时候,不用在传递数据类型
    E:如果方法有明确的返回值类型,就必须有return语句返回。
(6)方法重载
    在同一个类中,方法名相同,参数列表不同。与返回值无关。

    参数列表不同:
        参数的个数不同。
        参数的对应的数据类型不同。
(7)方法重载案例
    不同的类型的多个同名方法的比较。

你可能感兴趣的:(黑马程序员——循环结构和方法)