复习笔记10 Map与Set集合

1 HashSet集合

1.1 Set接口的特点   

Set体系的集合:

    A:存入集合的顺序和取出集合的顺序不一致

    B:没有索引

    C:存入集合的元素没有重复

HashSet唯一性原理:

规则:新添加到HashSet集合的元素都会与集合中已有的元素一一比较

       首先比较哈希值(每个元素都会调用hashCode()产生一个哈希值)

  如果新添加的元素与集合中已有的元素的哈希值不同,新添加的元素存入集合

       如果新添加的元素与集合中已有的某个元素哈希值相同,此时还需要调用equals(Object obj)比较

       如果equals(Object obj)方法返回true,说明新添加的元素与集合中已有的某个元素的属性值相同,那么新添的元存入集合

       如果equals(Object obj)方法返回false, 说明新添加的元素与集合中已有的元素的属性值都不同, 那么新添的元存入集合

1.2 Collection中的方法

CollectionCollections有什么区别?

 * Collection是集合体系的最顶层,包含了集合体系的共性

 * Collections是一个工具类,方法都是用于操作Collection

static void swap(List list, int i, int j) :将指定列表中的两个索引进行位置互换

static void  sort(List<T> list) :按照列表中元素的自然顺序进行排序

static void shuffle(List list):随机置换

static void reverse(List list)  :反转

static void fill(List list, Object obj) :使用指定的对象填充指定列表的所有元素

static void copy(List dest, List src) :是把源列表中的数据覆盖到目标列表

注意:目标列表的长度至少等于源列表的长度

static int  binarySearch(List list, Object key) 使用二分查找法查找指定元素在指定列表的索引位置

2 HashMap集合

2.1 Map接口概述

A:Collection中的集合,元素是孤立存在的,向集合中存储元素采用一个个元素的方式存储

B:Map中的集合,元素是成对存在的。每个元素由键与值两部分组成,通过键可以找对所对应的值。

C:Collection中的集合称为单列集合,Map中的集合称为双列集合。

需要注意的是,Map中的集合不能包含重复的键,值可以重复;每个键只能对应一个值。

2.2 Map的常用功能

A:映射功能:

 V put(K key, V value) :以键=值的方式存入Map集合

B:获取功能:

  V get(Object key):根据键获取值

 int size():返回Map中键值对的个数

C:判断功能:

    boolean containsKey(Object key):判断Map集合中是否包含键key的键值对

    boolean containsValue(Object value):判断Map集合中是否包含值value键值对

  boolean isEmpty():判断Map集合中是否没有任何键值对

D:删除功能:

  void clear():清空Map集合中所有的键值对

  V remove(Object key):根据键值删除Map中键值对

E:遍历功能:

  Set<Map.Entry<K,V>> entrySet():将每个键值对封装到一个个Entry对象中,再把所有Entry的对象封装到Set集合中返回

  Set<K> keySet() :Map中所有的键装到Set集合中返回

  Collection<V> values():返回集合中所有的value值的集合

2.3 Map的两种遍历方式

1:得到所有的key,通过key得到所有的value

2: 使用entrySet()方法

 

 

 

 

 

 

 

 

posted @ 2018-12-13 17:12  陈某啊  阅读(103)  评论(0编辑  收藏  举报