Java集合框架:是一种工具类,就像是一个容器可以存储任意数量的具有共同属性的对象。
Java集合中成员很丰富,常用的集合有ArrayList,HashMap,HashSet等。线程安全的有Vector,HashTable。线程不安全的有LinkedList,TreeMap,ArrayList,HashMap等等。
集合框架的接口
Java集合框架提供了各种接口。这些接口包括几种对集合执行不同操作的方法。
我们将在后面的章节中详细了解这些接口,它们的子接口以及各种类中的实现。让我们在本教程中简要了解常用接口。
Java Collection(集合) 接口
Collection接口是集合框架层次结构的根接口。
Java没有提供直接实现Collection接口,但是像提供其子接口List,Set和Queue的实现。
集合框架 与 Collection接口
人们经常会在集合框架和Collection接口之间感到困惑。
Collection接口是集合框架的根接口。 该框架还包括其他接口:Map和Iterator。 这些接口也可能具有子接口。
Collection 接口的子接口
如前所述,Collection接口包括由Java类实现的子接口。
Collection接口的所有方法也都存在于其子接口中。
下面三种接口是Collection接口的子接口:
1、List 接口
List接口是一个有序的集合,它允许我们像数组一样添加和删除元素。要了解更多,请访问Java List 接口
2、Set 接口
Set接口允许我们将元素存储在不同的集合中,类似于数学中的集合。它不能有重复的元素。要了解更多信息,请访问Java Set 接口
3、Queue 接口
当我们要以先进先出的方式存储和访问元素时,可以使用Queue接口。要了解更多信息,请访问Java Queue 接口
Java Map 接口
在Java中,Map接口允许元素以键/值对的形式存储。键是唯一的名称,可用于访问map中的特定元素。而且,每个键都有一个与之关联的值。要了解更多信息,请访问Java Map 接口
Java Iterator 接口
在Java中,Iterator接口提供了用于访问集合元素的方法。要了解更多信息,请访问Java Iterator 接口
为什么使用集合框架?
Java集合框架提供了可以直接使用的各种数据结构和算法。这有两个主要优点:
我们不需要手动编写代码来实现这些数据结构和算法。
随着集合框架的高度优化,我们的代码将更加高效。
此外,集合框架允许我们对特定类型的数据使用特定的数据结构。这里有一些实例,
如果我们希望我们的数据是唯一的,那么我们可以使用集合框架提供的Set接口。
要以键/值对的形式存储数据,可以使用Map接口。
ArrayList类提供可调整大小的数组的功能。
示例:ArrayList集合类
在结束本教程之前,让我们以collections框架的ArrayList类为例。
本ArrayList类允许我们创建可调整大小的数组。该类实现List接口(Collection接口的子接口)。
//Collections框架在java.util包中定义
import java.util.ArrayList;
class Main {
public static void main(String[] args){
ArrayList<String> animals = new ArrayList<>();
//添加元素
animals.add("Dog");
animals.add("Cat");
animals.add("Horse");
System.out.println("ArrayList: " + animals);
}
}
输出:
ArrayList: [Dog, Cat, Horse]