JAVASE第4天笔记

来源:互联网 发布:淘宝脱毛仪器有效果吗 编辑:程序博客网 时间:2024/06/07 03:50

Day04课堂笔记

标签(空格分隔): java基础


for循环概述

格式for(初始化表达式; 比较/判断表达式;循环后的操作表达式){    循环体;// 要执行的语句,一些代码}

执行流程:
第一步:执行初始化表达式
第二步:执行判断表达式,看结果是true还是false
如果是true则执行循环体;
如果是false则结束,不执行循环体;
第三步:如果判断出true执行完循环体语句后,就执行循环后的操作表达式
第四步:再次判断比较表达式,重复第二步
案例:循环输出十次helloword

举例:

class For_Demo {    public static void main(String[] args) {        //需求:输出十次HelloWorld        for (int x = 1; x <= 10 ;x++ )        {            System.out.println("hello,world!");        }    }}

案例:使用for循环输出1到10 ,输出10到1;

class For_Demo {    public static void main(String[] args) {        //需求:输出十次HelloWorld        for (int x = 10; x >= 1 ;x-- )        {            System.out.println(x);        }    }}注意事项    (1)比较表达式里面的结果必须是布尔类型 boolean类型    (2)如果是一条语句,可以省略,如果多条语句,不允许省略,建议永远不要省略!    (3)有左大括号左边就不能写分号;

while循环

格式:    初始化语句;    while(条件表达式/判断语句){        语句体;        循环控制语句;//改变条件    }执行流程:    第一步:执行初始化语句;    第二步:执行判断语句                 如果:为true则执行循环体;                如果:为false不执行循环体;    第三步:如果执行了语句体,紧跟着就执行循环控制语句;如果没有循环控制语句,会无限循环;    第四步:重复第二步
class Demo1_While {    public static void main(String[] args) {        int x = 1;        while (x <= 10) {            System.out.println("x = " +  x);            x++;        }    }}

注意事项:
(1)记得别漏写控制条件;
(2)有左大括号,就没有分号;

//某屌丝为了追求女神,写了一段代码示爱,但是女神也会java,改动一下把屌丝拒绝        int j = 1;        while (j <= 10000);        {            System.out.println("I Love You!!!");            j++;        }

do–while

格式:    初始化语句;    do {        循环体;        控制条件;    }while(判断条件);执行流程    第一步:执行初始化语句;    第二步:执行do里面的循环体,然后执行控制语句;    第三步:执行判断条件,如果为true,继续执行循环体里面的代码,如果为false,则结束;注意:do里面的循环体至少执行一次!

古语:先礼后兵 先砍后奏

三个循环区别

区别
for和while循环都要先判断后执行
do–while 先执行一次再开始判断

for 和 while区别
for里面初始化的表达式值只能作用域for循环里面,出了循环就不能使用
while循环的初始化语句定义在while循环的外面,所以循环结束后,该变量还可以继续使用.
补充: for的另外一种写法,可以让初始化语句的值在循环继续使用
初始化语句;
for(;判断语句;控制语句){
循环体;
}
如果我们不知道怎么使用循环结构,就用for循环,开发中,for循环最常用!

两种无限循环结构

    while(true){        循环体;    }    for(;;){        循环体;    }

这两种无限循环,以后while(true)在开发中常用,虽然是无限循环,但是我们可以通过控制语句去跳出循环!
什么使用for循环,什么使用while循环
如果明确循环次数的情况下,我们推荐使用for循环,如果不明确循环的次数,这个时候可以考虑使用while循环,当你不知道用什么循环的使用,推荐用for循环.

嵌套循环

class Demo1_ForFor {    public static void main(String[] args) {        for (int i = 1;i <= 4 ;i++ ) {                  //外循环决定的是行数            //循环体            for (int j = 1;j <= 5 ;j++ ) {              //内循环决定的是列数                System.out.print("*");            }            System.out.println();        }    }}

第一步:先执行了外面的循环的初始化语句,然后开始做判断
第二步:如果条件成立,紧接着执行循环体
第三步:一定要把循环体看成一个整体,把里面的代码全部执行完之后,才能继续下一步;
如果循环体里面是一个循环结构,那么这个循环结构必须先执行完,才能执行下一步,也就是控制语句;
第四步:回到外层循环,然后继续判断;

外层循环控制 行数 ,内存循环控制列数!

转义字符

转义字符 功能 \t 制表符 \n 换行 \r 回车

break关键字

作用 : 跳出循环 ,终止循环,可以控制循环应用: switch 中 和 循环中

continue 关键字

作用: 终止本次循环操作,继续下次循环,在continue之后的代码,在当次循环中都不会被执行,而是直接跳到控制语句;
/** A:continue的使用场景    * 只能在循环中 */class Demo2_Continue {    public static void main(String[] args) {        for (int x = 1;x <= 10 ;x++ ) {            if (x == 4) {                //break;                continue;                           //终止本次循环,继续下次循环            }            System.out.println("x = " + x);        }        System.out.println("----");    }}

标号控制

格式:
标识符 :
应用:
对单层循环结构而言,没有意义,如果需要在内层循环中,在符合特定要求的情况下,跳出外层循环,这个时候可以采用标号法,使用break+标号来跳出;

练习

class Test1 {    public static void main(String[] args) {        for(int x=1; x<=10; x++) {            if(x%3==0) {                //break;                        //我想在控制台输出2次:“Java基础班“                //continue;                     //我想在控制台输出7次:“Java基础班“                System.out.println("Java基础班");//我想在控制台输出13次:“Java基础班“               }            System.out.println("Java基础班");        }    }}

三个关键字区别

return和break以及continue的区别?return : 结束方法break : 结束循环,终止循环;continue : 终止当次循环,继续下次循环!
    class Demo4_Return {    public static void main(String[] args) {        for (int i = 1;i <= 10 ;i++ ) {            if (i == 4) {                               //break; 相当于跳到位置1                return;  相当于直接跳到位置2                     //返回的意思,用来返回方法            }        } // 位置1        System.out.println("循环结束了");    }//位置2 }

方法(函数)

什么是方法
完成特定功能的代码块
方法的作用是什么?
提高代码的复用性,其实就是为了少写代码
定义方法的一般格式是什么?
修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2…){
代码;
}
//public static 修饰符
//void 返回值类型
//main 方法名 (其实就是标识符)
//参数类型 参数名 :数量不限,可以写,可以不写,根据实际功能要求来!
public static void main(String[] args){

}

怎么写方法?

1,明确返回值类型 : 我要返回什么2,明确参数列表 : 我要你给我什么

注意:写方法时候,不要把方法写在main方法里面,否则报错!

class MethodDemo {    public static void main(String [] args){    //千万不要在这里面写方法    //写好方法后 怎么调用?    //在主方法里面,直接写方法名(传入相应参数)       int  he =  add(10,20,30);       System.out.println("he = " + he);    }    //要在大括号下面去书写    //如果不需要返回任何值,就写void    // 如果要返回具体的数据,看这个数据是什么类型的返回值就写什么类型的    public static int add(int a,int b,int c){        int sum = a + b + c;        return sum;    } }

方法的调用

方法的重载

方法名相同,参数列表不同 (方法重载),与返回值无关参数列表不同    参数个数不同    参数类型不同        顺序不同思考:没有方法重载行不行? 不用也可以,只是需要起不同的名字 方法重载解决什么问题?    解决了我们在调用方法时候,我们对于类似功能的代码块,只需要记住一个方法名即可.不需要记住多个方法名!    举例: 做两个数加法 和三个数的加法 都是做加法,add方法就够了
已知函数 : void show(int a, int b, float c){ },哪个答案和show不是函数重载?A.void show(int a,float c,int b){ } B,void show(int x,int y,float z){ } C.int show(int a, float c, int b){return a;} D.int show(int a, float c ){return a;}
0 0
原创粉丝点击