1 Scanner:接收键盘输入的值
(1)导包
(2)创建对象
(3)接收值
(4)关闭资源:对象名.close();
import java.util.Scanner;//导包
public class Scan {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);//创建对象
int x1=sc.nextInt();//接收值
double x2=sc.nextDouble();
String x3=sc.next();
System.out.println(x1);
sc.close();//关闭资源
}
}
2 switch
(1)方式一
switch(等值表达式){
case 结果1:
操作1;
break;
case 结果2:
操作2;
break;
...
default:
操作n;
}
(2)方式二(JDK12以后的新写法,不用写break就有break的效果)
switch(等值表达式){
case 结果1 -> 操作1;
case 结果2 -> {
操作2.1;
操作2.2;
break; //只能跳出此switch循环
}
default -> 操作n;
}
注意:
(1)等值表达式结果有5种(byte、short、int、char、String)
(2)default可有可无
(3)若无break,则向下贯穿
(4)与if...else if的区别:
①条件
if:关系或逻辑表达式,boolean
switch:等值表达式,byte、short、int、char、String
②结束标志
if:}
switch:首选结束标志是break,然后是}
③使用场景
当且仅当判断条件是等值表达式且值满足上述5种类型,且值可能性少,使用switch;其它情况使用if
3 for
(1)for与while区别:相同条件下for更节省内存空间
(2)死循环:
for( ; ; ){ }
for(初始化值; ; ){ }
for(初始化值; 判定条件; ){ }
(3)增强版for:不用写下标,直接遍历输出数组各个值
int[] x1={1,4,6,7};
for (int ming:x1){
System.out.print(ming+" "); //1 4 6 7
}
4 退出指定循环
方法一:在循环前面加标签
loop:while (true) {
System.out.println("-------------欢迎来到学生管理系统-------------");
System.out.println("1:添加学生");
System.out.println("2:删除学生");
System.out.println("3:修改学生");
System.out.println("4:查询学生");
System.out.println("5:退出");
System.out.print("请输入您的选择:");
Scanner sc = new Scanner(System.in);
// int choose = sc.nextInt();//若用户输入abc,则报错,不能进行修改
String choose = sc.next();//若用户输入abc则不报错,提高容错率
//选择功能
switch (choose) {
case "1":
System.out.println("添加学生");
break;
case "2":
System.out.println("删除学生");
break;
case "3":
System.out.println("修改学生");
break;
case "4":
System.out.println("查询学生");
break;
case "5":
System.out.println("退出");
break loop; //退出名为loop的循环
default:
System.out.println("没有这个选项");
}
}
方法二:停止虚拟机运行
while (true) {
System.out.println("-------------欢迎来到学生管理系统-------------");
System.out.println("1:添加学生");
System.out.println("2:删除学生");
System.out.println("3:修改学生");
System.out.println("4:查询学生");
System.out.println("5:退出");
System.out.print("请输入您的选择:");
Scanner sc = new Scanner(System.in);
//int choose = sc.nextInt();//若用户输入abc,则报错,不能进行修改
String choose = sc.next();//若用户输入abc则不报错,提高容错率
//选择功能
switch (choose) {
case "1":
System.out.println("添加学生");
break;
case "2":
System.out.println("删除学生");
break;
case "3":
System.out.println("修改学生");
break;
case "4":
System.out.println("查询学生");
break;
case "5":
System.out.println("退出");
System.exit(0); //直接结束虚拟机运行
default:
System.out.println("没有这个选项");
}
}