java学习_part01_java核心卷_day04_集合简介

1. 集合简介

1.1 集合框架

1.1.1 集合框架中的接口

集合接口

java集合中主要有Collection接口和Map接口,其中Collection接口下主要有List接口和Set接口

 

1.1.2 集合框架中的具体实现类

1.2 集合接口

1.2.1 Collection接口

方法(部分)说明
booleaen add( E e) 添加元素
void clear() 清空集合
boolean contains(Object o) 如果集合包含o,则返回true
boolean equals(Object o) o和集合进行比较
int hashCode() 返回集合的哈希值
boolean isEmpty() 如果集合为空,返回true
Iterator<E> iterator() 返回集合元素的迭代器
boolean remove(Object o) 如果集合中存在o,则删除,否则返回false
int size() 返回集合中的元素数目
Object[] toArray() 返回包含集合中所有元素的数组

 

1.2.1.1 List接口

方法(部分)说明
E get(int index) 获取指定下标位置元素
int indexOf(Object o) 返回列表中指定元素第一次出现的下标,如果没有,返回-1
E remove(int index) 移除指定下标位置元素,并返回
boolean remove(Object o) 移除第一次出现的指定元素o
E set(int index, E element) 指定元素element替换指定下标处元素
default void sort(Comparator<? super E> c) 使用比较器进行列表排序
List<E> subList(int fromIndex, int toIndex) 返回列表中fromIndex到toIndex之间的子列表视图

 

1.2.1.2 Set接口

方法(部分)说明
boolean remove(Objcet o) 如果set中存在元素o,则删除

 

1.2.2 Map接口

 

Map方法(部分)说明
void clear() 清空map
boolean containsKey(Object key) 如果有指定key,返回true
boolean containsValue(Objcet value) 如果有指定value,返回true
Set<MapEntry<K, V>> entrySet() 以set形式返回map中包含的键值对
boolean equals()  
V get(Object key) 如果有指定key,返回对应值,否则返回null
default V getOrDefault(Object o, V defaultValue) 如果有指定key,返回对应值,否则返回defaultValue
int hashCode()  
boolean isEmpty()  
Set<K> keySet() 以set形式返回map中包含的键
V put(K key, V value) 存入键值对,如果已有指定key,则覆盖
V remove(Object key) 从map中删除指定key的键值对
default boolean remove(Object K, Object V)  
default V replace(K key, V value) 用新值代替旧值
int size()  
Collection<V> values() 以Collection形式返回map中的值

 

内置接口:

Map.Entry<K, V>:键值对

Map.Entry内置接口方法(部分)说明
boolean equals()  
K getKey() 返回键值对中的键
V getValue() 返回键值对中的值
int hashCode()  
V setValue() 替换键值对中的值

 

补充:

  • 哈希值hashcode:每个对象有一个唯一的哈希值

  • 哈希化:将哈希值转化到数字下标范围内较小的值,哈希化以后无法保证唯一性,导致哈希冲突

  • 哈希冲突解决:开放地址法或链地址法

     

1.2 常用集合具体实现类

1.2.1 List接口常用实现类

  • ArrayList

  • LinkedList

 

1.2.2 Set接口常用实现类

  • HashSet

  • TreeSet

  • LinkedHashSet

     

1.2.3 Map接口常用实现类

  • HashMap

  • HashTable

  • ConcurrentHashMap:

  • TreeMap

  • LInkedHashMap

  •  

posted @ 2020-12-28 19:17  OLeeO97  阅读(125)  评论(0编辑  收藏  举报