Collection值单列集合List(),以及遍历方式
知识点-- 单列集合常用类的继承体系
讲解:
Collection:单列集合类的根接口,用于存储一系列符合某种规则的元素,它有两个重要的子接口,分别是java.util.List
和java.util.Set
。其中,List
的特点是元素有序、元素可重复 ; Set
的特点是元素不可重复。List
接口的主要实现类有java.util.ArrayList
和java.util.LinkedList
,Set
接口的主要实现类有java.util.HashSet
和java.util.LinkedHashSet
。
从上面的描述可以看出JDK中提供了丰富的集合类库,为了便于初学者进行系统地学习,接下来通过一张图来描述集合常用类的继承体系
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8TcOVnUj-1578644114181)(img/Collection%E9%9B%86%E5%90%88%E4%BD%93%E7%B3%BB%E5%9B%BE.jpg)]
注意:这张图只是我们常用的集合有这些,不是说就只有这些集合。
小结:
集合的继承体系:
单列集合:以单个单个的方式存储元素
Collection接口:也称Collection集合,定义了所有单列集合共有的功能
List接口:也称List集合,特点:元素有索引,元素存取有序,元素可以重复
Vector类:也称Vector集合,特点:查询快,增删慢,线程安全
ArrayList类:也称ArrayList集合,特点:查询快,增删慢,线程不安全
LinkedList类:也称LinkedList集合,特点:查询慢,增删快
Set接口:也称Set集合,特点:元素无索引,元素存取无序,元素不可以重复
HashSet类:也称HashSet集合,特点:元素无索引,元素存取无序,元素不可以重复
LinkedHashSet类:也称LinkedHashSet集合,特点:元素无索引,元素存取有序,元素不可以重复
TreeSet类:也称TreeSet集合,特点:元素无索引,元素存取无序,元素不可以重复,可以对元素进行排序
双列集合:以键值对的方式存储元素(键值对)
Map接口:也称Map集合
HashMap类:也称HashMap集合
LinkedHashMap类:也称LinkedHashMap集合
TreeMap类:也称TreeMap集合
知识点-- Collection 常用功能
目标:
- Collection是所有单列集合的父接口,因此在Collection中定义了单列集合(List和Set)通用的一些方法,这些方法可用于操作所有的单列集合。
步骤:
- Collection集合 常用功能
讲解:
方法如下:
public boolean add(E e)
: 把给定的对象添加到当前集合中 。public void clear()
:清空集合中所有的元素。public boolean remove(E e)
: 把给定的对象在当前集合中删除。public boolean contains(Object obj)
: 判断当前集合中是否包含给定的对象。public boolean isEmpty()
: 判断当前集合是否为空。public int size()
: 返回集合中元素的个数。public Object[] toArray()
: 把集合中的元素,存储到数组中
tips: 有关Collection中的方法可不止上面这些,其他方法可以自行查看API学习。
public class Demo02ListMethod {
public static void main(String[] args) {
method4();
}
public static void method4() {
//创建集合
List<String> list = new ArrayList<>();
//添加元素
list.add("jack");
list.add("rose");
list.add("tony");
//打印集合
System.out.println("替换前:" + list); //[jack, rose, tony]
//调用set方法,使用 tom 替换掉原来索引为1的元素
String str = list.set(1, "tom");
System.out.println("替换后:" + list); //[jack, tom, tony]
System.out.println("str:" + str); //rose
}
public static void method3() {
//创建集合
List<String> list = new ArrayList<>();
//添加元素
list.add("jack");
list.add("rose");
list.add("tony");
//打印集合
System.out.println("删除前:" + list)