程序流程管制介绍
- 顺序控制
- 分支管制
- 循环管制
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 也可获取。