已知某学校的教学课程内容安排如下:
完成下列要求:
1)使用一个Map,以老师的名字作为键,以老师教授的课程名作为值,表示上述课程安排。
2)增加了一位新老师Allen 教JDBC
3)Lucy改为教CoreJava put方法
4)遍历Map,输出所有的老师及老师教授的课程
5)利用Map,输出所有教JSP 的老师。
代码如下:
import java.util.*;
import java.util.Map.Entry;
public class MapTest {public static void main(String[] args) {
//1)使用一个Map,以老师的名字作为键,以老师教授的课程名作为值,表示上述课程安排。
Map<String,String> teachers=new HashMap<>();
teachers.put("Tom","CoreJava");
teachers.put("John","Oracle");
teachers.put("Susan","Oracle");
teachers.put("Jerry","JDBC");
teachers.put("Jim","Unix");
teachers.put("Kevin","JSP");
teachers.put("Lucy","JSP");
//2)增加了一位新老师Allen 教JDBC
teachers.put("Allen", "JDBC");
//3)Lucy改为教CoreJava put方法
teachers.put("Lucy","CoreJava");
//4)遍历Map,输出所有的老师及老师教授的课程
//第一种方法(获得键集合然后遍历)
Set keys=teachers.keySet();
Iterator<String> it =keys.iterator();
while(it.hasNext()){
String key=it.next();
String value=teachers.get(key);
System.out.println(key+" "+value);
}
//第二种方法
for(Entry<String,String> entry : teachers.entrySet()){
System.out.println(entry.getKey()+" "+entry.getValue());
}
//5)利用Map,输出所有教JSP 的老师。
//第一种方法
Set keyss=teachers.keySet();
Iterator<String> its =keyss.iterator();
while(its.hasNext()){
String key=its.next();
String value=teachers.get(key);
if(value.equals("JSP")){
System.out.println(key);
}
}
//第二种方法
if(teachers.containsValue("JSP")){
for(Entry<String,String> entry : teachers.entrySet()){
if(entry.getValue().equals("JSP")){
System.out.println(entry.getKey());
}
}
}
}