Java 集合框架是一组用于存储、操作和搜索数据的类和接口。它提供了各种实现了常用数据结构的集合类,如列表、集合、映射等。以下是一个简要的 Java 集合教程:

1. 集合框架的层次结构:
Java 集合框架主要分为两个接口层次结构:Collection 接口和 Map 接口。
  •  Collection 接口: 代表一组对象,主要有 List、Set 和 Queue 三个子接口。

  •  Map 接口: 代表一组键值对,包括 HashMap、TreeMap 和 LinkedHashMap 等实现。


2. List 接口:
List 是有序的集合,允许重复元素。常用的实现类有 ArrayList、LinkedList 和 Vector。

示例代码:
import java.util.ArrayList;
import java.util.List;

public class ListExample {
    public static void main(String[] args) {
        List<String> names = new ArrayList<>();
        names.add("Alice");
        names.add("Bob");
        names.add("Charlie");

        // 遍历列表
        for (String name : names) {
            System.out.println(name);
        }
    }
}

3. Set 接口:
Set 是不允许重复元素的集合,没有定义顺序。常用的实现类有 HashSet、LinkedHashSet 和 TreeSet。

示例代码:
import java.util.HashSet;
import java.util.Set;

public class SetExample {
    public static void main(String[] args) {
        Set<String> colors = new HashSet<>();
        colors.add("Red");
        colors.add("Green");
        colors.add("Blue");

        // 遍历集合
        for (String color : colors) {
            System.out.println(color);
        }
    }
}

4. Map 接口:
Map 是键值对的集合,每个键映射到一个值。常用的实现类有 HashMap、LinkedHashMap 和 TreeMap。

示例代码:
import java.util.HashMap;
import java.util.Map;

public class MapExample {
    public static void main(String[] args) {
        Map<String, Integer> ages = new HashMap<>();
        ages.put("Alice", 25);
        ages.put("Bob", 30);
        ages.put("Charlie", 22);

        // 遍历映射
        for (Map.Entry<String, Integer> entry : ages.entrySet()) {
            System.out.println(entry.getKey() + ": " + entry.getValue());
        }
    }
}

5. Queue 接口:
Queue 是一种先进先出(FIFO)的集合,常用的实现类有 LinkedList 和 PriorityQueue。

示例代码:
import java.util.LinkedList;
import java.util.Queue;

public class QueueExample {
    public static void main(String[] args) {
        Queue<String> tasks = new LinkedList<>();
        tasks.add("Task 1");
        tasks.add("Task 2");
        tasks.add("Task 3");

        // 检索并删除队列的头
        String nextTask = tasks.poll();
        System.out.println("Next Task: " + nextTask);
    }
}

这只是 Java 集合框架的入门,深入学习可以包括对迭代器、比较器、泛型等更高级的概念的理解。集合框架为处理数据提供了丰富的工具和灵活性,对于实现不同的业务需求非常有用。


转载请注明出处:http://www.zyzy.cn/article/detail/451/Java