huihuimm

博客园 首页 联系 订阅 管理

1、常用集合类的继承关系

Collecttion接口不能直接使用,它包含了

add(E e),将指定的对象添加到集合中

remove(Object o),将指定的对象从该集合中移除

isEmpty(),判断集合是否为空,返回一个boolean值

iterator(),迭代器,用于遍历集合中的元素

size(),返回int值,获取该集合中元素的个数

 

问:如何遍历集合中的每个元素?

 1 import java.util.*;
 2 public class Muster{
 3     public static void main(String[] args){
 4         Collection<String> list=new ArrayList<>();
 5         list.add("aaaaa");
 6         list.add("bbbbb");
 7         list.add("bbbbb");
 8         //创建迭代器,开始遍历
 9         Iterator<String> it=list.iterator();
10         while(it.hasNext()){
11             String str = (String)it.next();
12         }
13     }
14 }
15                                 

2、List集合

List集合包括List接口以及List接口的所有实现类。List集合中的元素允许重复,顺序就是插入的顺序。可以通过索引位置访问集合中的元素。

包含接口:

set(int index,Object obj):将集合中指定索引位置的对象修改为指定的对象。

get(int index):获取指定索引位置的元素。

List接口的实现类:

(1)ArrayList:插入和输出比较慢,可根据索引位置查找元素。(一种顺序表——数组,快查慢插)

E表示合法的数据类型

ArrayList<E> list=new ArrayList<>(); //创建对象

list.add("aaaa");

list.remove(2);

 

(2)LinkedList:采用链表结构保存对象。优点:便于向集合中插入和删除对象。随机访问速度慢。

List<E> list2=new Linkedlist<>();

 

 

3、Set集合

set集合中的对象不按特点的方式排序,只是简单地把对象加入到集合中,但是Set集合中不能包含重复的对象。

 

HashSet:允许使用null元素,不保证顺序

 

TreeSet:按照自然排序的顺序递增排序,也可以按照比较器递增排序。

TreeSet类增加的方法:

first();

last();

comparator();

headSet(E toElement) 返回一个新的Set集合,新集合为toElement)前的所有对象

subSet(E fromElement1,E fromElement2)返回一个新的Set集合,新集合为(E fromElement1,E fromElement2]这一段的所有对象

tailSet(E toElement) 返回一个新的Set集合,新集合为(toElement后的所有对象

遍历:

Iterator<Integer> it=set.iterator();

it.hasnext()

it.next()

 

4、Map

提供Key-Value

方法:

put(K key,V value):向集合中添加key value的映射关系

containsKey(Object key):判断是否包含key

containsValue(Object Value):判断是否包含Value

get(Object key)

keySet():返回Map集合中所有key的set集合

values():返回该集合中所有value形成的collection集合

 

HashMap:快速查找,不保证顺序

TreeMap:添加、删除、定位映射关系性能比HashMap差。优点:具有一定的顺序,不允许存在null

 

posted on 2022-08-10 00:22  huihuimm  阅读(57)  评论(0)    收藏  举报