Set List Map大集合

1.Set 示例

假设我们想要存储一组不重复的学生姓名。

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

public class SetExample {
    public static void main(String[] args) {
        Set<String> students = new HashSet<>();

        students.add("Alice");
        students.add("Bob");
        students.add("Charlie");
        students.add("Alice"); // 重复项,不会添加到集合中

        System.out.println("学生名单: " + students);
    }
}

在这个例子中,HashSet 被用来存储学生姓名,自动去除重复项。

set遍历

Set 是一个不允许重复元素的集合。要遍历 Set,可以使用增强型 for 循环或迭代器。

Set<String> set = new HashSet<>();
set.add("element1");
set.add("element2");

// 使用增强型 for 循环
for (String element : set) {
    System.out.println(element);
}

// 使用迭代器
Iterator<String> iterator = set.iterator();
while (iterator.hasNext()) {
    System.out.println(iterator.next());
}

2.List 示例

假设我们想要维护一个按顺序排列的购物清单,并且可能需要重复项。

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

public class ListExample {
    public static void main(String[] args) {
        List<String> shoppingList = new ArrayList<>();

        shoppingList.add("苹果");
        shoppingList.add("香蕉");
        shoppingList.add("苹果"); // 可以添加重复项
        shoppingList.add("橙子");

        System.out.println("购物清单: " + shoppingList);
    }
}

在这个例子中,ArrayList 被用来存储购物清单,保持了元素的插入顺序,并且允许重复项。

遍历

Map 是键值对的集合,可以遍历键、值或键值对。Map 提供了几种不同的遍历方式。

Map<String, Integer> map = new HashMap<>();
map.put("one", 1);
map.put("two", 2);

// 遍历键
for (String key : map.keySet()) {
    System.out.println(key);
}

// 遍历值
for (Integer value : map.values()) {
    System.out.println(value);
}

// 遍历键值对
for (Map.Entry<String, Integer> entry : map.entrySet()) {
    System.out.println(entry.getKey() + " : " + entry.getValue());
}
 

3.Map 示例

假设我们想要存储一个班级的学生及其对应的成绩。

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

public class MapExample {
    public static void main(String[] args) {
        Map<String, Integer> studentGrades = new HashMap<>();

        studentGrades.put("Alice", 92);
        studentGrades.put("Bob", 85);
        studentGrades.put("Charlie", 88);

        System.out.println("Alice的成绩: " + studentGrades.get("Alice"));
        System.out.println("Bob的成绩: " + studentGrades.get("Bob"));
        System.out.println("Charlie的成绩: " + studentGrades.get("Charlie"));

        // 更新成绩
        studentGrades.put("Alice", 95);
        System.out.println("Alice的更新后成绩: " + studentGrades.get("Alice"));
    }
}

在这个例子中,HashMap 被用来存储学生姓名和对应的成绩。每个学生姓名(键)映射到一个成绩(值)。

遍历

List 是一个有序的集合,允许重复元素。要遍历 List,可以使用增强型 for 循环或传统的 for 循环。

List<String> list = new ArrayList<>();
list.add("element1");
list.add("element2");

// 使用增强型 for 循环
for (String element : list) {
    System.out.println(element);
}

// 使用传统的 for 循环
for (int i = 0; i < list.size(); i++) {
    System.out.println(list.get(i));
}

总结

  • Set 适合存储不重复的元素集合,如不重复的学生名单。
  • List 适合存储有序的元素集合,可能包含重复项,如购物清单。
  • Map 适合存储键值对集合,通过键快速查找值,如学生的成绩记录。
  • 22
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值