1.while循环
while循环语句格式:
基本格式
while(初始化语句以及条件表达式){
循环体语句;
步长语句(控制体语句) ;
}
扩展格式:(推荐)
初始化语句;
while(条件表达式){
循环体语句;
步长语句(控制体语句) ;
}
执行流程:
1)首先初始化语句进行赋值
2)判断条件表达式是否成立,如果成立,执行循环体语句
再次执行步长语句;
3)继续判断条件表达式是否成立,如果成立,执行循环体语句
再次执行步长语句;
...
...
4)当条件表达式为false,不成立,while循环语句结束
2.while循环和for循环的区别
1)从格式上不太一样
for(初始化语句;条件表达式;步长语句){
循环体;
}
初始化语句;
while(条件表达式){
循环体语句;
步长语句;
}
2)从内存角度:(是否节省内存空间)
变量: 编译时期变量 运行时期变量
int i = 10 ; Integer(引用类型) i = 100 ;
for循环:for循环语句结束,变量从内存中释放掉了,节省内存空间(优先)
while循环:while循环语句结束,依然可以访问变量,耗费内存空间
变量/对象 最终程序结束,都需要垃圾回收器GC
(jvm:假想计算机--->开启:垃圾回收线程)
3)应用场景:是否明确次数
针对for循环:(使用居多) 明确循环次数
举例: == :基本类型: int a = 10 ; int b = 20 ;
模拟用户登录, 给三次机会! (String类:equals())
针对while循环:(使用:仅此for) :不明确循环次数
举例:
猜数字游戏: (不知道猜多少次,能猜中!)
键盘录入一个数据
3.死循环
格式1:
for(;;){
循环体语句;
}
格式2 :(推荐)
while(true){
循环体语句;
}
4.do…while循环
格式:
初始化语句;
do{
循环体语句;
步长语句(控制体语句) ;
}while(条件表达式) ;
执行流程:
1)初始化语句赋值
2)直接执行循环体语句---->步长语句--->条件表达式
....
....
特点:循环体至少执行一次 (它和while,for的区别)
5.for循环嵌套
for(初始化语句;条件表达式;步长语句){
//循环体语句
for(初始化语句;条件表达式;步长语句){
}
}
6.跳转控制语句
break :中断,结束
continue: 结束当前循环,立即进入下一次循环
return :结束方法方法去使用的!(结合方法)
break:中断,结束的意思
不能单独使用,没有意义!
在switch中以及循环中使用!
循环中使用:
1)可以在单层循环中使用
2)早期的使用:用在for循环嵌套中使用(外层循环,内层循环)
标签语句
给外层循环/内层循环中起一个名字
格式:标签名称:for(初始化语句;条件表达式;步长语句){...}
标签名称:for(){}
循环嵌套:应用场景:
后期使用:
增强for循环: 遍历集合
类上于: HashMap<String,ArrayList<>> 集合嵌套集合
7.方法
概念:将一个独立的代码块{}抽取出来并为当前这个起名字!(作用:提高代码的复用性)
定义方法:
第一种:有返回值类型的方法的定义
固定格式:
public static 返回值类型 方法名(形式参数类型1 参数名称1,形式参数类型2 参数名称2...){
业务需求...
return 结果;
}
格式的详细介绍:
权限修饰符:public(公共的,访问权限足够大) static(静态)
返回值类型:数据类型(目前基本数据类型:四类八种: )
举例:求两个数据之后 结果:int类型
方法名:遵循标识符的规则(见名知意)
单个单词:全部小写
多个单独:第一个单词小写,从第二个单词开始,每个单词首字母大写,其余小写
小驼峰命名法!
形式参数类型:数据类型(目前基本数据类型:四类八种: )
参数名称:变量名称
return: 这个方法调用完毕了,带回具体的结果!
有返回值类型的方法调用:
1)单独调用(没有意义)
2)输出调用:不推荐
3)赋值调用:推荐