4.流程控制(下)和方法
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
• 分支结构:语句在满足条件下执行 – if, if-else, 多重if, switch
• 循环结构:语句在满足条件下循环执行多次 – while, do-while, for
• 跳转语句 – break, continue, return
方法(函数)
方法概述
• 方法的概述:
• 方法(函数):就是在类中,完成特定功能的代码块。 • 当我们需要复用一段代码时,我们需要把这段代码提取出来做成一个
练习
• 在控制台输出1-100之间奇数和(使用while、continue) • 求一张纸折叠多少次高度超过珠峰(使用while、break) • 方法-求任意两个数的和。 • 方法-在控制台打印n行m列的矩形。
模块,而这个模块就是方法。
• 方法的作用:
提高了代码的复用性 提高了代码的可维护性:
• 扩展(了解):
• 生活中,方法可以看作是一个功能或这动作。如”吃饭”, “开灯“ ,“学习 “都可以看作是一个方法。
方法的格式
访问修饰符 返回值类型 方法名(参数类型 //方法体;
reutrn 返回值;
}
参数名1 ,参数类型 参数名2 ...) {
跳转控制语句
• 虽然我们解决了循环执行某个东西的问题,但是,当我们 需要在某个循环执行到某一步的时候结束某个循环,现在 就做不了这件事情。
• 为了弥补这个缺陷,Java就提供了break,continue和return 来实现控制语句的跳转和中断。 • break 结束 • continue 跳过 • return 返回(结束)
public int amethod(String s1, String s2){ }
private void amethod(int j, String ss){ }
public void Amethod(int i, String s){ }
private void amethod(int i){};
• 2.参数 • 要明确,在所定义的功能中,该功能是否对方法的调用有要求, 或者该方法是否需要外界提供数据?如果有,则表明该方法需 要参数,否则,方法不需要参数。
方法重载
• 方法重载概述
• 在同一个类中,允许存在一个以上的同名方法,只要它们的参 数个数或者参数类型不同即可。这种现象叫做方法重载。
• 方法重载特点
• 与返回值类型无关,只看方法名和参数列表 • 在调用时,虚拟机通过参数列表的不同来区分同名方法
面试题
请指出下面代码中存在()处错误,并说明错误原因。
public class Sample
{
public void amethod(int i, String s){ }
public void amethod(String s, int i){ }
• 演示案例: • 结束循环其实是结束了main方法
ห้องสมุดไป่ตู้
标签(了解)
• Java支持使用标签进行多层循环的跳出: • 格式:
• 定义:标签名: 循环语句; • 使用:
break 标签名; continue 标签名;
注意:标签名要符合java的标识符命名规则。
小结
• 顺序结构:语句顺序执行
– 自上而下,从左到右
循环结构的选择
• 三种循环语句其实都可以完成一样的功能,他们之间可以 等价转换。但在不同的应用场景下,我们需要不同的选择: 1. 首选for ,其次while,最后选择do-while 2. 当循环次数明确时,首选for 3. 当循环次数不明确时,首选while 4. 如果先执行后判断,首选do-while
练习
• 我国最高山峰是珠穆朗玛峰:8848m,我现在有一张足够 大的纸张,厚度为:0.0002m。请问,我折叠多少次,就 可以保证厚度不低于珠穆朗玛峰的高度?
do…while循环
• do…while循环语句格式:
• 基本格式 do { 循环体语句; }while(判断条件语句);
• 扩展格式 初始化语句; do { 循环体语句; 控制条件语句; } while(判断条件语句);
while循环
• while循环语句格式:
• 基本格式 while(判断条件语句) { 循环体语句; }
• 扩展格式 初始化语句; while(判断条件语句) { 循环体语句; 控制条件语句; }
while循环
• while循环语句格式图
for和while循环的区别
• for循环语句和while循环语句可以等价转换,但还是有些小区 别的 • 循环变量使用范围区别(非绝对): • for循环控制的循环变量只能在循环内部使用 • while循环控制的循环变量可以在循环外部使用 • 死循环:永远都没有结束的循环 • for(;;){} • while(true){}
//…… }
参数列表: (数据类型 参数1,数据类型 参数2…)
返回值
• 任何方法的调用都是让方法中的代码去执行。 • 有返回值的方法可以直接把“方法的调用” 当作一个值来使用。这
个值,就是返回值。 • 方法的返回值只能有一个。
• 例(有返回值的方法):
public static void main(String[] args){
• 参数:使用这个方法的要求 • 参数类型:参数的数据类型 • 参数名:给这个参数起的名字 • 实际参数(实参):实际参与运算的数据,可以是常量也可以是变量 • 形式参数(形参):用于接收实际参数数据的变量 • 方法上的参数指的是形参。
方法的特点
• 方法与方法是平级关系,不能嵌套定义 • 方法需要先定义、然后调用(使用)。 • 方法不调用不执行
• 返回值类型就是返回值的数据类型。 • 方法结束时,必须有“return 返回值” • 无返回值方法: • 只是让代码去执行。不能把“方法的调用”当作值来使用。 • 返回值类型必须为void • 方法不能有“return 返回值”
方法的设计
• 在设计方法时需要注意:两个明确
• 1.返回值 • 要明确,在所定义的功能中,最后的结果是否需要在其他地方 使用? 如果需要,则表明该方法需要返回值,否则,则方法 没有返回值。
sum(); }
sum();就相当于1这个值。 可以用来赋值,也可以用 来输出。
public static int sum(){
return 1;
}
返回值的特点
• 有没有返回值,和有没有参数没关系。 • 有返回值方法:
• 不仅是让代码去执行,而且还可以把“方法的调用”直接当作值 来使用。这个值,就是返回值。
break和continue的区别
• 使用场景:
• break:switch语句、循环语句 • continue:循环语句
• 作用:
• break:结束当前switch或循环代码块。 • continue:跳过本次循环,执行下一次循环。
跳转控制语句(return)
• return关键字不是为了跳转出循环体,更常用的功能是结 束一个方法,也就是退出一个方法。跳转到上层调用的方 法。这个在方法的使用那里会在详细的讲解。
}
A.
4
B.
3
C.
2
D.
1
面试题
下列()可以加入到Sample类中,并且能够编译正确。 public class Sample {
public int getSomething(int d) {
return d; }
} A. private int getSomething( int i , String s ) { } B. public void getSomething( int i ) { } C. private int getSomething( int i , String s ) { return 20; } D. public double getSomething( ) { return 10; }
第4天 流程控制(下)和方法
回顾
• 位移运算符(了解) • 三元运算符 • 运算符优先级 • 顺序结构 • 条件(判断)结构:
• if、if-else、多重if • 选择结构:switch • 循环结构:for • 循环嵌套
本章内容
• while循环 • do-while循环 • for、 while、 do-while之间的关系 • 跳转控制:break、 continue和return; • 标签(了解) • 方法的概述 • 方法的格式 • 方法的调用 • 方法的返回值
方法的调用
• 特点: – 方法的调用其实就是让这个方法中的代码去执行。 – 方法的调用只和参数有关 – 例:
public static void main(String[] args){
sum(90,92);
}
调用方法,传递的参数要与参数
列表一一对应
public static void sum(int a,int b){
• 格式说明
• 访问修饰符:方法的使用范围。 • 比较多,后面会详细介绍。目前public static
• 方法名:我们给方法起的名字。 • 方法体:完成方法功能的代码
格式说明
• 返回值:方法运行之后交给我们的结果。 • 返回值类型:交给我们的结果的数据类型 • 返回值:交给我们的结果(具体的数据)。
do…while循环
• do…while循环语句图:
while和do-while的区别
• 执行顺序不同 • while循环:先判断“循环条件”是否成立,然后再执行 循环体 • do-while循环:先执行循环体,然后再判断“循环条件” 是否成立。也就是说do-while循环要保证循环体至少执行 一次。
• 循环结构:语句在满足条件下循环执行多次 – while, do-while, for
• 跳转语句 – break, continue, return
方法(函数)
方法概述
• 方法的概述:
• 方法(函数):就是在类中,完成特定功能的代码块。 • 当我们需要复用一段代码时,我们需要把这段代码提取出来做成一个
练习
• 在控制台输出1-100之间奇数和(使用while、continue) • 求一张纸折叠多少次高度超过珠峰(使用while、break) • 方法-求任意两个数的和。 • 方法-在控制台打印n行m列的矩形。
模块,而这个模块就是方法。
• 方法的作用:
提高了代码的复用性 提高了代码的可维护性:
• 扩展(了解):
• 生活中,方法可以看作是一个功能或这动作。如”吃饭”, “开灯“ ,“学习 “都可以看作是一个方法。
方法的格式
访问修饰符 返回值类型 方法名(参数类型 //方法体;
reutrn 返回值;
}
参数名1 ,参数类型 参数名2 ...) {
跳转控制语句
• 虽然我们解决了循环执行某个东西的问题,但是,当我们 需要在某个循环执行到某一步的时候结束某个循环,现在 就做不了这件事情。
• 为了弥补这个缺陷,Java就提供了break,continue和return 来实现控制语句的跳转和中断。 • break 结束 • continue 跳过 • return 返回(结束)
public int amethod(String s1, String s2){ }
private void amethod(int j, String ss){ }
public void Amethod(int i, String s){ }
private void amethod(int i){};
• 2.参数 • 要明确,在所定义的功能中,该功能是否对方法的调用有要求, 或者该方法是否需要外界提供数据?如果有,则表明该方法需 要参数,否则,方法不需要参数。
方法重载
• 方法重载概述
• 在同一个类中,允许存在一个以上的同名方法,只要它们的参 数个数或者参数类型不同即可。这种现象叫做方法重载。
• 方法重载特点
• 与返回值类型无关,只看方法名和参数列表 • 在调用时,虚拟机通过参数列表的不同来区分同名方法
面试题
请指出下面代码中存在()处错误,并说明错误原因。
public class Sample
{
public void amethod(int i, String s){ }
public void amethod(String s, int i){ }
• 演示案例: • 结束循环其实是结束了main方法
ห้องสมุดไป่ตู้
标签(了解)
• Java支持使用标签进行多层循环的跳出: • 格式:
• 定义:标签名: 循环语句; • 使用:
break 标签名; continue 标签名;
注意:标签名要符合java的标识符命名规则。
小结
• 顺序结构:语句顺序执行
– 自上而下,从左到右
循环结构的选择
• 三种循环语句其实都可以完成一样的功能,他们之间可以 等价转换。但在不同的应用场景下,我们需要不同的选择: 1. 首选for ,其次while,最后选择do-while 2. 当循环次数明确时,首选for 3. 当循环次数不明确时,首选while 4. 如果先执行后判断,首选do-while
练习
• 我国最高山峰是珠穆朗玛峰:8848m,我现在有一张足够 大的纸张,厚度为:0.0002m。请问,我折叠多少次,就 可以保证厚度不低于珠穆朗玛峰的高度?
do…while循环
• do…while循环语句格式:
• 基本格式 do { 循环体语句; }while(判断条件语句);
• 扩展格式 初始化语句; do { 循环体语句; 控制条件语句; } while(判断条件语句);
while循环
• while循环语句格式:
• 基本格式 while(判断条件语句) { 循环体语句; }
• 扩展格式 初始化语句; while(判断条件语句) { 循环体语句; 控制条件语句; }
while循环
• while循环语句格式图
for和while循环的区别
• for循环语句和while循环语句可以等价转换,但还是有些小区 别的 • 循环变量使用范围区别(非绝对): • for循环控制的循环变量只能在循环内部使用 • while循环控制的循环变量可以在循环外部使用 • 死循环:永远都没有结束的循环 • for(;;){} • while(true){}
//…… }
参数列表: (数据类型 参数1,数据类型 参数2…)
返回值
• 任何方法的调用都是让方法中的代码去执行。 • 有返回值的方法可以直接把“方法的调用” 当作一个值来使用。这
个值,就是返回值。 • 方法的返回值只能有一个。
• 例(有返回值的方法):
public static void main(String[] args){
• 参数:使用这个方法的要求 • 参数类型:参数的数据类型 • 参数名:给这个参数起的名字 • 实际参数(实参):实际参与运算的数据,可以是常量也可以是变量 • 形式参数(形参):用于接收实际参数数据的变量 • 方法上的参数指的是形参。
方法的特点
• 方法与方法是平级关系,不能嵌套定义 • 方法需要先定义、然后调用(使用)。 • 方法不调用不执行
• 返回值类型就是返回值的数据类型。 • 方法结束时,必须有“return 返回值” • 无返回值方法: • 只是让代码去执行。不能把“方法的调用”当作值来使用。 • 返回值类型必须为void • 方法不能有“return 返回值”
方法的设计
• 在设计方法时需要注意:两个明确
• 1.返回值 • 要明确,在所定义的功能中,最后的结果是否需要在其他地方 使用? 如果需要,则表明该方法需要返回值,否则,则方法 没有返回值。
sum(); }
sum();就相当于1这个值。 可以用来赋值,也可以用 来输出。
public static int sum(){
return 1;
}
返回值的特点
• 有没有返回值,和有没有参数没关系。 • 有返回值方法:
• 不仅是让代码去执行,而且还可以把“方法的调用”直接当作值 来使用。这个值,就是返回值。
break和continue的区别
• 使用场景:
• break:switch语句、循环语句 • continue:循环语句
• 作用:
• break:结束当前switch或循环代码块。 • continue:跳过本次循环,执行下一次循环。
跳转控制语句(return)
• return关键字不是为了跳转出循环体,更常用的功能是结 束一个方法,也就是退出一个方法。跳转到上层调用的方 法。这个在方法的使用那里会在详细的讲解。
}
A.
4
B.
3
C.
2
D.
1
面试题
下列()可以加入到Sample类中,并且能够编译正确。 public class Sample {
public int getSomething(int d) {
return d; }
} A. private int getSomething( int i , String s ) { } B. public void getSomething( int i ) { } C. private int getSomething( int i , String s ) { return 20; } D. public double getSomething( ) { return 10; }
第4天 流程控制(下)和方法
回顾
• 位移运算符(了解) • 三元运算符 • 运算符优先级 • 顺序结构 • 条件(判断)结构:
• if、if-else、多重if • 选择结构:switch • 循环结构:for • 循环嵌套
本章内容
• while循环 • do-while循环 • for、 while、 do-while之间的关系 • 跳转控制:break、 continue和return; • 标签(了解) • 方法的概述 • 方法的格式 • 方法的调用 • 方法的返回值
方法的调用
• 特点: – 方法的调用其实就是让这个方法中的代码去执行。 – 方法的调用只和参数有关 – 例:
public static void main(String[] args){
sum(90,92);
}
调用方法,传递的参数要与参数
列表一一对应
public static void sum(int a,int b){
• 格式说明
• 访问修饰符:方法的使用范围。 • 比较多,后面会详细介绍。目前public static
• 方法名:我们给方法起的名字。 • 方法体:完成方法功能的代码
格式说明
• 返回值:方法运行之后交给我们的结果。 • 返回值类型:交给我们的结果的数据类型 • 返回值:交给我们的结果(具体的数据)。
do…while循环
• do…while循环语句图:
while和do-while的区别
• 执行顺序不同 • while循环:先判断“循环条件”是否成立,然后再执行 循环体 • do-while循环:先执行循环体,然后再判断“循环条件” 是否成立。也就是说do-while循环要保证循环体至少执行 一次。