20180630_03_Java中关于循环语句,方法 和数组以及内存分配问题的一些介绍

    for循环的语法:

for(初始化语句;条件语句;步长语句){  

                                循环体语句。                                          

                                 }

 

        for循环的流程是:1)初始化语句,并且赋值。

                                    2)执行条件表达式,如果条件为true则进入循环体。

                                    3)循环语句执行完毕后在执行步长语句,然后再次执行条件表达式,如果条件为真,则进入循环。

                                    4)一直到条件表达式为falsefor循环结束。

 

    while循环的语法:初始化语句;

                                 while(条表){          

                                     循环体;

                                     步长;  

                                 }

 

    for循环和while循环的区别:

 

                1)从内存角度考虑,for循环优于while循环,因为for循环结束后,变量立刻会被回收掉,释放空间。

                      而while循环不会被回收掉。

                2)从应用场景上,当明确循环范围时,用for循环。当不明确时,用while循环。

do-while循环的语法:初始条件;

                                    do{

                                       循环语句;    

                                        步长语句;

                                    } while(条件表达式) ;

do-while循环和for循环,while循环的最大的区别

 

                   1)从格式看:do-while循环至少循环1次。

                   2)从应用场景:如果要使用循环语句,优先使用for循环,然后while循环,其次才是do-while循环。

死循环:

                    break中断,结束,(只能在循环语句和switch语句中使用)。

                    continue停止当前循环,进入下一个循环。

                    return一般情况:在Java中自定义一个方法中必须有return语句(前提有return语句,那么该方法必须有返回值) 携带结果性的数据。

 

方法:就是用来执行特定功能的代码

 

方法的格式

权限修饰符 静态修饰符 返回值  方法名(数据类型1 参数1,...){

           return 结果;

          }

                       权限修饰符:public +静态 static。

                       返回值:具体返回的数据的数据类型。

                       方法名:给当前独立的代码起一个名字,见名思意。

                       (数据类型1 参数1,数据类型 参数2...)这里定义的参数就是形参。

                        return该方法的结果。

 

定义方法的注意事项:1)方法和方法之间是平级关系,不能在一个方法中定义新的方法。

                                  2)形参中,参数类型一定要有

                                  3)调用方法时,不能带数据类型。

                                  4)书写方法时要明确两个值:

                                                  a:明确返回值类型;

                                                   b:明确参数类型及参数个数。

                                   5)当没有具体返回值时,用void

在定义方式时,会出现方法重载(overload):定义多个方法时候,方法名相同,参数列表不同,并且与返回值无关!

                参数列表不同:    1)参数个数不同

                                           2)参数类型不同

 

数组:可以储存多个元素的容器。

            数组的定义: 数据类型[] 数组名称;

            数组的初始化:

                           1)动态初始化:指定数组长度,由系统给数组中的元素赋值    int[] array = new array[10];

                           2)静态初始化:指定数组中的元素的值,由系统给数组指定长度    int[] arr = new int[] {1,2,3} ;

                          注意:一个数组不能动静结合。

Java中的内存分配问题:

        1)栈内存:存储局部变量或方法调用

        2)堆内存:new出来的对象(面向对象:成员变量)

        3)方法区:xxxx.class字节码文件区域/static区域/字符串常量池/字符串缓冲区.....

        4)寄存器

        5)本地方法区:和系统有关。

    栈内存的特点:可以存储局部变量(局部变量:在方法中或方法声明上定义的变量。)

    堆内存的特点:new出来的对象存储在这里。

                            当创建对象后,这些对象不会立刻被GC回收器回收掉,而是等待GC回收器空闲状态的时候,会被回收掉,或者当一个对象没有更多引用的时候会被回

 

猜你喜欢

转载自blog.csdn.net/Lisiluan/article/details/81106859