案例介绍:某公司现有java程序开发部门、C#程序开发部门、asp.net程序测试部门、前端程序开发部门四个部门。编写一个程序实现新入职的员工的部门分配,要求根据用户输入的员工姓名和应聘语言确定员工应该分配到哪个部门。若公司没有与输入的语言匹配的部门,则进行相关提示。
案例思路:
- 从任务描述中可知,我们需要使用Scanner类让用户输入新员工的姓名以及应聘的语言,并使用两个String数据接收用户输入的内容。
- 从任务描述中可知,我们可以使用switch条件语句根据语言判断所被分配的部门。
- 最后在switch条件语句中打印新员工姓名加所处的部门。
案例实现:
public class Main {
public static void main(String[] args) {
/*
* 根据用户输入的信息确定员工应分配到那个部门。
*/
Scanner sc =new Scanner(System.in);
System.out.println("请输入新员工的姓名:");
String name=sc.next();
System.out.println("请输入新员工应聘的语言:");
String language=sc.next();
switch(language){
case "Java":
case "java":
System.out.println(name+"被分配到java程序开发部门");
break;
case "C#":
case "c#":
System.out.println(name+"被分配到c#程序开发部门");
break;
case "asp.net":
System.out.println(name+"被分配到asp.net程序测试部门");
break;
case "html":
case "Html":
System.out.println(name+"被分配到前端程序开发部门");
break;
default:
System.out.println("抱歉,本公司不需要"+language+"语言的人。");
break;
}
}
}
第8~12行代码是让用户输入新员工的姓名和语言并使用String类型的数据接收,第13~32行代码使用switch条件语句根据用户输入的语言判断新员工应该被分配到那个部门。
需要注意的是,在switch语法中每个case关键字可以作为一个条件分支,但是对于多个条件采取相同业主务处理的情况,可以把多个case分支关联在一起,省略它们之间的break语句,而在最后一个相同的case分支中实现业务处理并执行break语句,就像本实例中应用的那样。