A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Zzz...123 初级黑马   /  2019-5-7 14:48  /  1163 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

Set集合的特点:无序的,LinkedHashSet是按写入顺序读取,TreeSet是按自己给定的顺序读取
无索引,不允许存储重复的值,借助于两个方法,hashCode() equals()
自然排序使用的接口和方法是:Comparable接口的的compareTo()方法
比较器排序使用的接口方法是Comparator接口中的compare()方法



Map集合的概述和特点:双列的  键值对方式存储数据  无序的(不强调)
一个键对应一个值
java.util包下  泛型两部分组成
是一个接口
Interface Map<K,V>k:键的类型,v:值得类型  键不允许重复  值可以重复
将键映射到值得对象:不能包含重复的键,每个键可以映射到最多一个值
采用多态的方式创建对象
具体的实现类:HashMap保证Map集合键的唯一性
Map 用put()方法添加元素  还可以作为覆盖写入的方法
put(K key, V value)将指定的值与该映射中的指定键相关联

当键重复的时候  新值就会把键以前的值替换掉


Map集合的基本方法  
put(key,value)  添加元素
remove(key)  根据键删除键值对元素  返回键对应的值  如果没有要删除的键  返回null
clear()  一处所有键值对元素
containsKey(Object key):判断集合是否包含指定的键
containsValue(Object value):判断集合是否包含指定的值
isEmpty():判断集合是否为空
size():集合的长度,也就是集合中键值对的个数

Map集合的常用获取方法
V get(Object key)根据键获取值  根据K返回一个V
Set<K> keySet()  获取所有键的集合  返回一个Set<K>集合
Collection<V> values():获取所有值得集合  返回一个Collection<V>集合

Map集合的第一种遍历方式keySet()
我们刚才存储的元素都是成对出现的,所以我们把Map看成是一个夫妻对的集合
获取所有键的集合,用keySet()方法实现
遍历键的集合,获取到每一个键,用增强for实现
根据键去找值,用get(Object key)方法实现

HashSet借助于HashMap实现了哈希表

Map集合的第二种遍历方式entrySet()keySet() values()的结合
我们刚才存储的元素都是成对出现的,所以我们把Map看成是一个夫妻对的集合
获取所有键值对对象的集合
entrySet():获取所有键值对集合
遍历键值对对象的集合,得到每一个键值对对象
增强for  得到每一个Map.Entry  增强for写冒号左边
根据键值对对象获取键和值
getKey()获取键
getValue()获取值


Map集合的值可以传集合进去  没定义泛型就是Object类
集合可以嵌套
如:ArrayList<HashMap<String,String>>  遍历的时候循环嵌套  外边的循环代表遍历ArrayList集合
里边的循环遍历HashMap集合


使用Collections工具类对集合排序  多了个s 静态方法组成  类名调用
排序:sort(List<T> list)
翻转:reverse(List<T> list)
随机排列:shuffle()

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马