9、Map存储教师信息相关操作

本文通过具体示例展示了如何使用Java中的Map集合来管理学校老师的课程安排,包括新增、修改条目以及遍历输出。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

编程题目:

9.(Map)已知某学校的教学课程内容安排如下:

老师      课程
Tom     CoreJava
John    Oracle
Susan   Oracle
Jerry   JDBC
Jim     Unix
Kevin   JSP
Lucy    JSP

完成下列要求:

(1)使用一个Map,以老师的名字作为键,以老师教授的课程名作为值,表示上述课程安排;

(2)增加了一位新老师Allen教JDBC;

(3)Lucy 改为教CoreJava;

(4)遍历Map,输出所有的老师及老师教授的课程;

(5)利用Map,输出所有教JSP的老师。

示例代码:

package program.collection.exercise09;

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;

/**
 * 9.完成下列要求:
 * (1)使用一个Map,以老师的名字作为键,以老师教授的课程名作为值,表示下述课程安排;
 * (2)增加了一位新老师Allen教JDBC;
 * (3)将Lucy改为教CoreJava;
 * (4)遍历Map,输出所有的老师及老师教授的课程;
 * (5)利用Map,输出所有教JSP的老师。
 * 老师               课程
 * "Tom","CoreJava"
 * "John","Oracle"
 * "Susan","Oracle"
 * "Jerry","JDBC"
 * "Jim","Unix"
 * "Kevin","JSP"
 * "Lucy","JSP"
*/

public class CourseMap {
    public static void main(String[] args) {

        //(1)使用一个Map,以老师的名字作为键,以老师教授的课程名作为值,表示下述课程安排
        Map<String, String> map = new HashMap<String, String>();

        map.put("Tom","CoreJava");
        map.put("John","Oracle");
        map.put("Susan","Oracle");
        map.put("Jerry","JDBC");
        map.put("Jim","Unix");
        map.put("Kevin","JSP");
        map.put("Lucy","JSP");

        System.out.println("Map修改前遍历:");
        Set<String> keySet = map.keySet();
        for(String key : keySet){
            System.out.println(key+"\t"+map.get(key));
        }

        //(2)增加了一位新老师Allen教JDBC
        map.put("Allen","JDBC");

        //(3)将Lucy改为教CoreJava
        map.put("Lucy","CoreJava");

        //(4)遍历Map,输出所有的老师及老师教授的课程
        System.out.println("Map修改后遍历:");
        Iterator<String> iterator = keySet.iterator();
        while (iterator.hasNext()) {
            String key = (String) iterator.next();
            System.out.println(key+"\t"+map.get(key));
        }

        //(5)利用Map,输出所有教JSP的老师
        System.out.println("教授JSP的老师姓名:");
        for(String key : keySet){
            if(map.get(key).equals("JSP")){
                System.out.println(key);
            }
        }

    }
}

结果显示:

这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值