测试Map接口中的常用方法

本文介绍了一个使用Java HashMap实现的Map接口方法测试案例。通过创建Employee类并实例化三个员工对象,将其存储在Map中,然后通过get方法检索特定键对应的员工信息。此测试验证了Map接口的基本操作。

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

测试Map接口中常用方法

package cn.hq.szxy;

import java.util.HashMap;
import java.util.Map;

/**
 * @author HQ
 * @e-mail ahmashq95@gmail.com
 * @date 2018/11/8.
 */
public class TestMap2 {

    public static void main(String[] args) {
        Employee e1 = new Employee(1001, "zhangsan", 2000);
        Employee e2 = new Employee(1002, "lisi", 10000);
        Employee e3 = new Employee(1003, "wangwu", 31000);
        Map<Integer, Employee> map = new HashMap<>();

        map.put(1001,e1);
        map.put(1002,e2);
        map.put(1003,e3);

        Employee employee=map.get(1001);
        System.out.println(employee.getEname());

        System.out.println(employee);
    }
}

class Employee {

    private int id;
    private String ename;
    private double salary;

    public Employee() {
    }

    public Employee(int id, String ename, double salary) {
        this.ename = ename;
        this.id = id;
        this.salary = salary;
    }

    public String getEname() {
        return ename;
    }

    public void setEname(String ename) {
        this.ename = ename;
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public double getSalary() {
        return salary;
    }

    public void setSalary(double salary) {
        this.salary = salary;
    }

    @Override
    public String toString() {
        return "id:"+id+"\n"+"name:"+ename+"\n"+"salary:"+salary;
    }
}

运行结果
在这里插入图片描述

### Java中Map接口及其常用实现类 #### HashMap的常见操作方法 在Java编程语言中,`HashMap` 是 `Map` 接口的一个重要实现类。它提供了键值对映射的数据结构存储方式,并允许null作为键和值。对于`HashMap`而言,其提供了一系列用于增删改查的操作函数。 - **put(K key, V value)** 方法向哈希表中插入新的条目;如果存在相同的key,则更新对应的value。 ```java map.put("Math", new Course("Mathematics")); ``` - **get(Object key)** 获取指定键所映射的值;返回null表示不存在该键或此键对应的是null值[^1]。 ```java Course mathCourse = (Course)map.get("Math"); System.out.println(mathCourse.getName()); ``` - **remove(Object key)** 移除特定键的映射关系(如果有),并返回之前关联的对象实例。 ```java Object removedValue = map.remove("English"); ``` - **containsKey(Object key)** 判断是否存在给定的键。 ```java boolean hasPhysics = map.containsKey("Physics"); ``` - **size()** 返回当前容器内元素的数量。 ```java int sizeOfMap = map.size(); ``` - **isEmpty()** 测试哈希表是否为空。 ```java if (!map.isEmpty()) { // do something when not empty } ``` - **clear()** 清空整个哈希表中的所有记录。 ```java map.clear(); ``` - **entrySet()**, **keySet()**, 和 **values()** 这些方法分别用来获取所有的键值对、所有的键以及所有的值组成的集合视图。这使得开发者可以方便地遍历哈希表的内容: ```java // 遍历键集合并打印每项课程名称 for(String courseName : map.keySet()){ System.out.print(courseName + ": "); } // 使用迭代器访问Entry对象从而同时获得键与值 Iterator<Map.Entry<String,Course>> it = map.entrySet().iterator(); while(it.hasNext()){ Map.Entry<String,Course> entry=it.next(); String name = entry.getKey(); Course c = entry.getValue(); } ``` 上述代码片段展示了如何利用`HashMap`来处理实际应用案例——即通过创建名为`SchoolCourses` 的类来进行学校课程管理系统的设计[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值