四 循环语句、控制跳转语句、方法(函数)初探
一. 主要内容
二. 循环语句
(1)什么是循环结构?
答:循环语句可以在满足循环条件的情况下,反复执行某一段代码,这段被重复执行的代码被称为循环体语句。
当反复执行这个循环体时,需要在合适的时候把循环判断条件修改为false,从而结束循环,否则循环将一直执行下去,形成死循环。而死循环是我们应该避免的。
(2)主要的循环语句有哪些?
答:有两个,for循环和while循环。
2.1 for循环
for(初始化表达式语句;判断条件语句;控制条件语句) {
循环体语句;
}在这里插入代码片
执行流程为:
a:执行初始化表达式语句
b:执行判断条件语句,看其返回值是true还是false
如果是true,就继续执行
如果是false,就结束循环
c:执行循环体语句;
d:执行控制条件语句
e:回到b继续。
2.2 while循环
(1)while循环
while循环的基本格式:
while(判断条件语句) {
循环体语句;
}
完整格式:
初始化条件语句;
while(判断条件语句) {
循环体语句;
控制条件语句;
执行流程为:
a:执行初始化条件语句;
b:执行判断条件语句,看其返回值是true还是false
如果是true,就继续执行
如果是false,就结束循环
c:执行循环体语句;
d:执行控制条件语句
e:回到b继续。
2.3 do while循环
do {
循环体语句;
}while(判断条件语句);
完整格式;
初始化条件语句;
do {
循环体语句;
控制条件语句;
}while(判断条件语句);
执行流程:
a:执行初始化条件语句;
b:执行循环体语句;
c:执行控制条件语句;
d:执行判断条件语句,看其返回值是true还是false
如果是true,就继续执行
如果是false,就结束循环
e:回到b继续。
2.4 三种循环方法的区别
上面介绍了三种循环方法,这三种循环方法有何区别?下面予以介绍:
《1》do while循环至少执行一次循环体。而for,while循环必须先判断条件是否成立,然后决定是否执行循环体语句。
《2》 如果你想在循环结束后,继续使用控制条件的那个变量,就用while循环,否则用for循环。
《3》若预先不知循环此时次数,使用while循环。
《4》建议优先考虑for循环,然后是while循环 ,最后是do…while循环。
三. 控制跳转语句(重要)
什么是控制跳转语句?一般常用的控制跳转语句有那几个?
答:在C语言中,我们可以使用goto语句来跳出循环,在java中,我们同样可以使用break,continue和return来实现控制语句的跳转和中断。
3.1 break语句
(1)break语句一般如何使用?
答:《1》在选择结构switch语句中《2》在循环语句中
(2)break语句有什么作用?
答:《1》退出单层循环《2》退出多层循环(几乎不使用)
3.2 continue语句
(1)continue语句一般如何使用?
答:一般使用在循环语句中。
(2)continue语句有什么作用?
答:跳出一次循环,执行下一步操作。
3.3 return语句
return语句一般如何使用?
答:return 就是退出一个方法。跳转到上层调用的方法。
3.4 三者进行比较
return: 结束当前方法
break: 结束单层循环
continue: 结束当前循环,执行下一次循环
四. 方法(函数)
什么是方法,为什么要定义方法?
答:方法就是完成特定功能的代码块。定义方法的主要目的是为了解决代码重复编写的问题。需要使用该方法时,直接调用即可。
4.1 方法的格式
修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2 ....){
方法体;
return 返回值;
}
对方法格式的详细说明如下:
(1): 修饰符 比较多,后面会详细介绍。目前使用 public static
(2): 返回值类型 用于限定返回值的数据类型
(3): 方法名 就是一个名称,它的存在是为了方便我们调用方法
(4): 参数类型 限定调用方法时传入参数的数据类型
(5): 参数名 是一个变量,接收调用方法时传入的参数
这个参数其实有一个专业的名词,被称之为形式参数,它的作用是用来接收实际参数的.
(6): 方法体 完成功能的代码
(7): return 结束方法以及返回方法指定类型的值
(8): 返回值 就是功能的结果,由return带回,带回给调用者
4.2 写方法时需要注意的问题
A: 方法不调用不执行
B: 方法与方法是平级关系,不能嵌套定义
C: 方法定义的时候参数之间用逗号隔开
D: 方法调用的时候不用在传递数据类型
E: 如果方法有明确的返回值,一定要由return带回一个值
4.3 方法的重载
在同一个类中,允许存在一个以上的同名方法,只要它们的参数列表不同,与返回值无关。
参数列表不同:
A:参数个数不同
B:参数类型不同