
Java
HashMap是Java中常用的数据结构之一,用于存储一对一的键值对。普通的HashMap只能存储一个键对应一个值,但在实际开发中,我们有时候需要存储一个键对应多个值的情况。为了解决这个问题,Java提供了一种特殊的HashMap,即"一个键,多个值"的数据结构。
使用HashMap存储多个值的案例代码:Javaimport Java.util.ArrayList;import Java.util.HashMap;import Java.util.List;import Java.util.Map;public class HashMapExample { public static void mAIn(String[] args) { // 创建一个HashMap Map<String, List<String>> hashMap = new HashMap<>(); // 向HashMap中添加键值对 List<String> fruits = new ArrayList<>(); fruits.add("苹果"); fruits.add("香蕉"); hashMap.put("水果", fruits); List<String> colors = new ArrayList<>(); colors.add("红色"); colors.add("黄色"); hashMap.put("颜色", colors); // 获取HashMap中的值 List<String> fruitsList = hashMap.get("水果"); System.out.println("水果:" + fruitsList); List<String> colorsList = hashMap.get("颜色"); System.out.println("颜色:" + colorsList); }}在上面的代码中,我们首先创建了一个HashMap对象,键的类型是String,值的类型是ListJavaimport Java.util.HashMap;import Java.util.Map;public class StudentManagementSystem { public static void mAIn(String[] args) { // 创建一个HashMap Map<String, Student> studentMap = new HashMap<>(); // 向HashMap中添加学生信息 Student student1 = new Student("张三", 18, 90); studentMap.put("张三", student1); Student student2 = new Student("李四", 20, 95); studentMap.put("李四", student2); // 获取HashMap中的学生信息 Student student = studentMap.get("张三"); System.out.println("姓名:" + student.getName()); System.out.println("年龄:" + student.getAge()); System.out.println("成绩:" + student.getScore()); }}class Student { private String name; private int age; private int score; public Student(String name, int age, int score) { this.name = name; this.age = age; this.score = score; } public String getName() { return name; } public int getAge() { return age; } public int getScore() { return score; }}在上面的代码中,我们创建了一个Student类,用于表示学生的信息。每个学生对象包含了姓名、年龄和成绩三个属性。然后,我们创建了一个HashMap对象,用于存储学生的信息。每个学生的姓名作为键,对应的学生对象作为值。接着,我们向HashMap中添加了两个学生的信息,分别是张三和李四。然后,我们通过get()方法来获取HashMap中的值,即学生对象。通过学生对象,我们可以获取到学生的姓名、年龄和成绩等信息,并将其输出到控制台上。在实际开发中,"一个键,多个值"的数据结构可以帮助我们更好地组织和管理数据。无论是存储学生信息、商品属性,还是管理用户订单,都可以通过HashMap来实现。这种数据结构的灵活性和易用性,为我们的开发工作带来了很大的便利。Copyright © 2025 IZhiDa.com All Rights Reserved.
知答 版权所有 粤ICP备2023042255号