JAVA学习笔记之Break,Continue和方法
来源:互联网 发布:淘宝刷単用软件怎么样 编辑:程序博客网 时间:2024/06/05 02:11
Break和Continue多用于循环结构中,我们先来回顾一下循环结构:
循环结构:
可以分为初始化语句(init_statements),循环条件(test_expression),循环体(body_statements),迭代语句(iteration_statements).
While(条件){ } 循环结构,是先判断循环条件,在执行循环体
注意:
1.使用while循环时,一定要保证循环条件有变成false的时候,不然就会成为一个死循环.
2.不要再循环条件后面加分号,不然循环体是一个空语句,则就反复运行这个空代码块,这样循环的返回值就没发生改变,就形成拉一个死循环;分号后面的代码块就与循环没有关系啦.
Do{ }while(); 循环结构,是先执行循环体,再判断循环条件 其循环条件后面有分号结束
以上两种循环的比较:
1.While(条件){ } 是先判断循环条件,在执行循环体; Do{ }while(); 是先执行循环体,再判断循环条件 其循环条件后面有分号结束
2.在同样的循环条件下,Do{ }while();的循环次数比While(条件){ } 多一次.
For(初始化表达式;条件表达式;迭代表达式){ } 循环结构
重点: For循环与while循环的等价转换:
For的变异写法: Foreach(数据类型 变量名:数组或者集合名){ }
嵌套循环的次数等于外层循环次数N与内层循环次数M的乘积:N*M
循环结构的对象多事数组或者集合等对象,我们先来说说数组,数组既是一种数据类型,本身也是一种引用类型.
定义数组的方法:
数据类型[] 数组名; (建议使用这种方式)
数据类型 数组名[];
注意:定义数组时不能制定数组的长度.
数组的初始化过程:
1.静态初始化方式 :arrayName[] = new tyoe[]{element1, element2,.............};
2.动态初始化方式 :现制定数组的长度,在有系统为数组元素指定初始值.即 arrayName = new type[length];
从内存上认识数组:
实际的数组元素是存储在堆(heap)内存中; 数组的引用变量是一个引用数据类型,被存储在栈(stack)内存中.
栈内存与堆内存的区别:
答:当执行一个方法时,每个方法都都会建立自己的栈内存;在这个方法内定义的变量,都会存储在栈内存中,随着方法的执行结束,这个方法的栈内存也会销毁;因此这个方法内定义的变量也是存储在占内存中;当我们在程序中定义一个对象时,这个对象将被保存在运行时数据区中,以便反复利用,这个运行时数据区就是堆内存;对内存中的数据不会再随方法结束时被销毁,只有这个对象没有引用变量引用它时,系统的垃圾回收才会在合适的时候回收它.
现在我们来说说Break和Continue:
Break : 当出现某种条件时,强行终止循环,而不是等循环条件false时在终止.这时就可以使用break命令. 只跳出当前当前循环体.
Continue: 终止本次循环,直接进入下一次循环.
方法与递归:
方法:多条语句的集合,能够重复使用.
如何定义一个方法?
public static void main(String[] args)
修饰符 public static
1.不加static 实例方法 非静态的
2.加static 静态方法 定义的方法和不加static差不多 ,只是在返回类型之前添加 static
3.返回值 void
分为两种 有返回值 int
无返回值 void
4.方法名 main
5.形参 (String [] args)
方法如何使用?
类名 对象的引用变量 = new 类名(); //创建一个对象 并用一个引用变量引用这个对象
引用变量.方法名();
值传递:
值传递的实质, 二进制的拷贝,得从java的内存上来解析:
Java的内存从逻辑上分为: 堆和栈
栈: 先进后出
程序执行 从main
方法执行的话 要入栈
方法执行完毕 要出栈
局部变量所占空间 是在 方法的栈帧里的
程序结束,栈内存销毁.
面试题1:Break与cintinue的区别?
答:Continnue结束本次循环,直接跳过continue后面的代码不会执行,继续下一次循环.
Break直接跳出循环.
Return:可以使用return终止方法,顺带终止循环.
面试题2:为什么要有方法?
答: 复用代码, 如果要要多次使用同样代码,就把这写代码放在方法里面,可以重复使用.体现啦Java的可复用性和可维护性。
- JAVA学习笔记之Break,Continue和方法
- Thinging in Java学习笔记之continue,break和标签
- Java学习之break和continue
- 【Java学习笔记】break continue return
- Java基础学习之--Break/Continue/Return
- java学习之旅23--break和continue_带标签的break和continue
- Java SE之break和continue标签
- Java基础之break和continue
- JAVA关键字之 break和continue
- Java学习笔记四-Java的循环结构和分支结构以及break,continue关键字
- 黑马程序员----break,continue,函数(方法,第五天学习笔记
- java编程思想学习笔记(循环中的break和continue)
- [2013-11-28]JAVA笔记_数组、方法、 Break 、continue
- Shell学习笔记(12)-流程控制之break、continue语句
- 【学习Linux】break 和continue
- java学习笔记(一)break、continue、ruturn的区别
- java个人学习笔记03(if、switch、break、continue)
- Java学习笔记_14_switch、continue、break执行语句要点
- C/C++ 变量的初始化
- 关于如何将Ubuntu系统中的GCC版本降级以适应matlab caffe安装。
- 297SerializeandDeserializeBinaryTree
- 你不知道的Java笔记7--Final关键字
- Linux进程间通信
- JAVA学习笔记之Break,Continue和方法
- AWT编程:
- signed 与 unsigned 有符号和无符号数
- 面向对象的原则之单一职责原则
- JDBC连接各种数据库的字符串
- jdbc连接数据库完整过程
- 剑指offer面试题31:连续子数组的最大和
- 欢迎使用CSDN-markdown编辑器
- 信息系统安全