JAVA(类集)

一、类集框架概述

类集框架(Collection Framework)是Java提供的一套用于存储和操作对象组的接口和类,位于java.util包中。

主要优点:

1. 提供高性能的数据结构和算法

2. 减少编程工作量

3. 提高程序速度和质量

4. 允许不同API之间的互操作

5. 降低学习和使用新API的难度

二、核心接口

1. Collection接口

所有类集的根接口

主要方法:

  boolean add(E e) // 添加元素

  boolean remove(Object o) // 删除元素

  int size() // 获取元素数量

  boolean isEmpty() // 判断是否为空

  Iterator iterator() // 获取迭代器

2. List接口(有序、可重复)

主要实现类:

  ArrayList:基于动态数组,查询快,增删慢

  LinkedList:基于链表,增删快,查询慢

  Vector:线程安全的动态数组(已过时)

3. Set接口(无序、唯一)

主要实现类:

  HashSet:基于哈希表,无序

  LinkedHashSet:保持插入顺序的HashSet

  TreeSet:基于红黑树,有序

4. Map接口(键值对存储)

主要实现类:

  HashMap:基于哈希表,无序

  LinkedHashMap:保持插入顺序的HashMap

  TreeMap:基于红黑树,按键排序

  Hashtable:线程安全的Map(已过时)

三、常用类详解

1. ArrayList

// 创建

List list = new ArrayList<>();



// 添加元素

list.add("Java");

list.add("Python");



// 访问元素

String first = list.get(0);



// 遍历

for (String item : list) {

    System.out.println(item);

}



// 删除元素

list.remove(1);

2. LinkedList

// 创建

LinkedList linkedList = new LinkedList<>();



// 添加元素

linkedList.add("First");

linkedList.addFirst("New First"); // 添加到开头



// 获取元素

String first = linkedList.getFirst();



// 删除元素

linkedList.removeLast();

3. HashSet

// 创建

Set set = new HashSet<>();



// 添加元素

set.add("Apple");

set.add("Banana");



// 判断包含

boolean hasApple = set.contains("Apple");



// 遍历

for (String fruit : set) {

    System.out.println(fruit);

}

工具类

Arrays工具类

int[] arr = {3, 1, 2};

// 排序

Arrays.sort(arr);

// 二分查找

int index = Arrays.binarySearch(arr, 2);

注意事项:

1. 集合中只能存储对象,不能存储基本数据类型(可使用包装类)

2. 集合类不是线程安全的(除Vector和Hashtable外)

3. 使用泛型确保类型安全

4. 修改集合时注意ConcurrentModificationException

5. 合理选择集合类型(根据查询、插入、删除需求)

你可能感兴趣的:(java,笔记,开发语言,java)