程序流程控制介绍
顺序控制
分支控制
循环控制
if 分支
switch 分支结构
switch(表达式){ case常量1; 语句块1; break; case常量2; 语句块2; break; ... case常量n; 语句块n; break;
default: default语句块; break;}
复制代码
表达式数据类型,应和 case 后的常量类型一致,或者是可以自动转成可以相互比较的类型,比如输入的是字符,而常量是 int
switch(表达式)中表达式的返回值必须是:(byte,short,int,char,enum[枚举],String)
case 子句中的值必须是常量,而不能是变量
default 子句是可选的,当没有匹配的 case 时,执行 default
break 语句用来在执行完一个 case 分支后使程序跳出 switch 语句块;如果没有写 break,程序会顺序执行到 switch 结尾,除非遇到 break;
for 循环控制
for (循环变量初始化;循环条件;循环变量迭代){ 循环操作(可以多条语句);}
复制代码
while 循环控制
while(循环条件){ 循环体(语句); 循环变量迭代;}
复制代码
do..while 循环控制
do{ 循环体(语句); 循环变量迭代;}while(循环条件);
复制代码
跳转控制语句-break
break 语句用于终止某个语句块的执行,一般使用在 switch 或者循环[for , while , do-while]中。
break 语句出现在多层嵌套的语句块中时,可以通过标签指明要终止的是哪一层语句块。如果没有指定 break,默认退出最近的循环体
例:实现登录验证,有 3 次机会,如果用户名为"丁真" ,密码"666"提示登录成功,否则提示还有几次机会,请使用 for+break
import java.util.Scanner;public class BreakExercise02 {
//编写一个main方法 public static void main(String[] args) {
//实现登录验证,有3次机会,如果用户名为"丁真" ,密码"666"提示登录成功, //否则提示还有几次机会,请使用for+break完成 // // 思路分析 // 1. 创建Scanner对象接收用户输入 // 2. 定义 String name ; String passwd; 保存用户名和密码 // 3. 最多循环3次[登录3次],如果 满足条件就提前退出 // 4. 定义一般变量 int chance 记录还有几次登录机会 // // 代码实现
Scanner myScanner = new Scanner(System.in); String name = ""; String passwd = ""; int chance = 3; //登录一次 ,就减少一次 for( int i = 1; i <= 3; i++) {//3次登录机会 System.out.println("请输入名字"); name = myScanner.next(); System.out.println("请输入密码"); passwd = myScanner.next(); //比较输入的名字和密码是否正确 //补充说明字符串 的内容 比较 使用的 方法 equals // 字符串比较推荐这种写法,可以有效避免空指针。相比于("name".equals(丁真)) if("丁真".equals(name) && "666".equals(passwd)) { System.out.println("恭喜你,登录成功~"); break; } //登录的机会就减少一次 chance--; System.out.println("你还有" + chance + "次登录机会"); } }}
复制代码
跳转控制语句-continue
continue 语句用于结束本次循环,继续执行下一次循环。
continue 语句出现在多层嵌套的循环语句体中时,可以通过标签指明要跳过的是哪一层循环, 这个和前面的标签的使用的规则一样.
跳转控制语句-return
return 使用在方法,表示跳出所在的方法。
文章和代码已经归档至【Github 仓库:https://github.com/timerring/java-tutorial 】或者公众号【AIShareLab】回复 java 也可获取。
评论