06|Java集合框架初学者指南:List、Set与Map的实战训练

本文介绍了Java集合框架中的List、Set和Map。List是有序且可重复的数据清单,Set是无序且唯一的元素集合,Map则是键值对映射表。通过理解并运用这些数据结构,可以提高代码效率和可读性。同时提供了练习题供读者实践。
摘要由CSDN通过智能技术生成

Java集合框架是Java语言的核心部分,它提供了丰富的类和接口,用来高效地管理和操作大量数据。这个强大的工具箱包括多种集合类型,其中最为常用的是List、Set和Map。

1.List - 有序且可重复的数据清单

概念:

List就像一个购物清单,你可以按照加入顺序存放和检索项目,而且同一个物品可以出现多次。

import java.util.ArrayList;
import java.util.List;

public class ListExample {
    public static void main(String[] args) {
        // 创建一个ArrayList实例,它是List接口的一个实现类
        List<String> fruits = new ArrayList<>();

        // 添加元素
        fruits.add("苹果");
        fruits.add("香蕉");
        fruits.add("苹果"); // 允许重复添加

        // 访问和修改元素
        fruits.set(1, "橙子"); // 将第二个元素替换为"橙子"

        // 输出所有元素
        System.out.println(fruits); // 输出: [苹果, 橙子, 苹果]

        // 按索引获取元素
        String firstFruit = fruits.get(0);
        System.out.println(firstFruit); // 输出: 苹果
    }
}

2.Set - 无序且唯一的元素集合

概念:

Set就像是一个不包含重复项的抽屉,你往里放东西的时候,系统会自动检查并排除已存在的元素,同时不保证元素的添加顺序。

import java.util.HashSet;
import java.util.Set;

public class SetExample {
    public static void main(String[] args) {
        // 创建一个HashSet实例,它是Set接口的一个实现类
        Set<String> countries = new HashSet<>();

        // 添加元素
        countries.add("中国");
        countries.add("美国");
        countries.add("中国"); // 尝试添加重复元素,实际不会增加新元素

        // 输出所有元素
        System.out.println(countries); // 输出: [美国, 中国]

        // 使用contains()检查元素是否存在
        boolean hasChina = countries.contains("中国");
        System.out.println(hasChina); // 输出: true
    }
}

3.Map - 键值对映射表

概念:

Map像是一个电话簿,每个条目都有一个唯一的键和与之关联的值,键必须唯一,而值则可以重复。

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

public class MapExample {
    public static void main(String[] args) {
        // 创建一个HashMap实例,它是Map接口的一个实现类
        Map<String, Integer> phoneBook = new HashMap<>();

        // 添加键值对
        phoneBook.put("张三", 12345678);
        phoneBook.put("李四", 87654321);
        phoneBook.put("王五", 12345678); // 键不同,值可以重复

        // 根据键获取值
        int zhangSanPhone = phoneBook.get("张三");
        System.out.println(zhangSanPhone); // 输出: 12345678

        // 检查是否包含某个键
        boolean hasZhangSan = phoneBook.containsKey("张三");
        System.out.println(hasZhangSan); // 输出: true
    }
}

总结

Java集合框架为程序设计提供了灵活多样的数据结构支持。List适合需要保持元素顺序且可能包含重复元素的场景;Set适用于元素唯一性至关重要的情况;而Map则用于映射关系的管理,非常适合用来模拟现实世界中的各种一对一关联关系。理解并熟练运用它们,能极大地提高代码的效率和可读性。

练习

1. 创建一个List,存储一系列学生的名字,并按字母顺序排序后输出。

2. 实现一个Set,用于存储一系列整数,并确保没有重复数字。

3. 构建一个Map,存储各个城市的经纬度信息,并根据城市名查询对应的经纬度坐标。

亲爱的读者,感谢您关注与支持我的博客。您的每一份鼓励都是我前行的动力。若我的文章曾给您带来收获或启发,欢迎打赏支持。打赏款项将用于提升内容质量,为您提供更优质的阅读体验。无论结果如何,都感恩您的陪伴,让我们共同在知识的世界里探索前行!

​​​​​​​

  • 12
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

周盛欢

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值