5.java集合学习,Set,List,Map
2016-12-30 14:41
288 查看
java–学习五.java集合类
概念:
一种工具类,就像是容器,存储任意数量的具有共同属性的对象
1. 特点及其解决的问题,
(1. 长度不确定。
(2. 可自行排序。
(3. 以键值对的形式存储数据。
2. 典型类有:
(1. 实现Collection接口的 Set,List 及其实现类,ArrayList,SashSet等
(2. 实现Map接口的 HashMap 及其实现类 HashTable等
3.作用:
(1. 在类的内部,对数据进行组织
(2. 简单而快速的搜索大数量的条目
(3. 有的集合接口,提供一系列排列有序的元素,并且可以在序列中减快速的插入或者删除有关元素
(4. 有的接口,提供了映射关系,可以通过关键字(key)去快速查找对应的唯一对象,而这个关键字是任意类型。
数组弊端:
(1. 数组的长度固定,集合长度可变
(2. 数组只能通过下标访问元素,类型固定,而有的集合可以通过任意类型查找所映射的具体对象
4. java集合框架体系结构
(1).LinkedList(链表)
List(序列) —> ArrayList(数组序列)(存储排列有序可以重复)
Collection(接口) ————> Queue(队列) —> LinkedList(链表)
Set(集) —> HashSet(哈希集)(无序不可重复)
集合:
Map(接口) —–实现类——-> HashMap(哈希图)由 Entry (键值对) Key-Value组成
List(接口) —–> ArrayList
(1. 元素有序并且可以重复的集合 — 序列
(2. 可以精确的控制每个元素的插入位置和删除某个位置的元素
(3. ArrayList(数组序列),底层是有数组实现的
5. List使用:
(1. 创建声明一个集合的对象:
首先需要声明一个集合如:
(2. 向集合中添加元素:
(3. 取出集合中的元素:
(4. 修改List中的元素
(5. 删除相应位置的元素
子类对象是父类对象,但父类对象不是子类对象
基本类型不能作为集合的范性,必须使用其包装类
6. Set 使用:
Set 是元素无序并且不可重复的集合 – 被称为集
HashSet – 哈希集, 是Set 的一个重要实现类
7. Map 使用:
Map提供了一种映射的关系,其中元素是键值对( key - value)的形式存储的,能够实现
根据 key 快速查找 value键值对是以 Entry 类型的对象实例形式存在
键(key值)不可以重复, value 值可以重复
每个键最多映射一个值,一个值可被多个键映射。
* * *
Map支持范性, 形如 : Map < K , V > K,V均为类类型
(1. HashMap 类 HashMap 是 Map 的一个实现类,也是最常用的基于哈希表实现
(2. HashMap 中的Entry 对象是无序排列的
(3. key 值 和 value 值都是可以为 null, 但是一个 HashMap只有一个 key 值为 null的映射(key 值不可重复)
(4. Map 添加和 List 和 Set 添加的方法有异 put(key , value);
(5. Map 获得Value 使用 get(key) 获得相应的 value
(6. Map 删除操作 remove(key)
(7. Map 修改集合内容 同添加,相当于是添加了新的内容,将之前内容覆盖
概念:
一种工具类,就像是容器,存储任意数量的具有共同属性的对象
1. 特点及其解决的问题,
(1. 长度不确定。
(2. 可自行排序。
(3. 以键值对的形式存储数据。
2. 典型类有:
(1. 实现Collection接口的 Set,List 及其实现类,ArrayList,SashSet等
(2. 实现Map接口的 HashMap 及其实现类 HashTable等
3.作用:
(1. 在类的内部,对数据进行组织
(2. 简单而快速的搜索大数量的条目
(3. 有的集合接口,提供一系列排列有序的元素,并且可以在序列中减快速的插入或者删除有关元素
(4. 有的接口,提供了映射关系,可以通过关键字(key)去快速查找对应的唯一对象,而这个关键字是任意类型。
数组弊端:
(1. 数组的长度固定,集合长度可变
(2. 数组只能通过下标访问元素,类型固定,而有的集合可以通过任意类型查找所映射的具体对象
4. java集合框架体系结构
(1).LinkedList(链表)
List(序列) —> ArrayList(数组序列)(存储排列有序可以重复)
Collection(接口) ————> Queue(队列) —> LinkedList(链表)
Set(集) —> HashSet(哈希集)(无序不可重复)
集合:
Map(接口) —–实现类——-> HashMap(哈希图)由 Entry (键值对) Key-Value组成
List(接口) —–> ArrayList
(1. 元素有序并且可以重复的集合 — 序列
(2. 可以精确的控制每个元素的插入位置和删除某个位置的元素
(3. ArrayList(数组序列),底层是有数组实现的
5. List使用:
(1. 创建声明一个集合的对象:
首先需要声明一个集合如:
List<Object(类型可不写)> list; //由于List是接口类型不能实例化,在这实例它的实现类 this.list = new ArrayList<Object(和上面元素类型相同)>();
(2. 向集合中添加元素:
add(int, Object(和上述类型相同)); //int为插入位置,默认(集合从0计起),不写默认插入到尾部
(3. 取出集合中的元素:
===1. 使用get()方法, list.get(int) //获取int位置的元素,不可大于等于存储个数,不可小于零 ===2. 通过迭代器来遍历List Iterator iterator = list.iterator(); while(iterito.hasNext()){ object obj = iterito.next(); }// hasNext() 判断是否还有元素,next() 依次访问元素 ===3. 通过for each 方法访问集合元素 for(Objrect obj : list) { ... }// 逐个访问 list 中的元素
(4. 修改List中的元素
使用 set() 方法 list.set(int, Object); //int -- 添加到的位置(从零开始) Object -- 添加的对象
(5. 删除相应位置的元素
使用 Remove() 方法 list.Remove(int); // int -- 需要删除的位置(从零开始) list.Remoce(list.get(int)) // 先要获得 int 位置上的对象,然后删除(该对象出现的一次的元素) removeAll(List) //删除和 List 集合中相同对象的所有元素,没有的不删除
子类对象是父类对象,但父类对象不是子类对象
基本类型不能作为集合的范性,必须使用其包装类
6. Set 使用:
Set 是元素无序并且不可重复的集合 – 被称为集
HashSet – 哈希集, 是Set 的一个重要实现类
(1. 没有 set() 修改指定位置元素信息的方法没有 get() 方法 (2. Set 会对重复元素进行屏蔽 (3. 其他使用放法同List
7. Map 使用:
Map提供了一种映射的关系,其中元素是键值对( key - value)的形式存储的,能够实现
根据 key 快速查找 value键值对是以 Entry 类型的对象实例形式存在
键(key值)不可以重复, value 值可以重复
每个键最多映射一个值,一个值可被多个键映射。
* * *
Map支持范性, 形如 : Map < K , V > K,V均为类类型
(1. HashMap 类 HashMap 是 Map 的一个实现类,也是最常用的基于哈希表实现
(2. HashMap 中的Entry 对象是无序排列的
(3. key 值 和 value 值都是可以为 null, 但是一个 HashMap只有一个 key 值为 null的映射(key 值不可重复)
(4. Map 添加和 List 和 Set 添加的方法有异 put(key , value);
(5. Map 获得Value 使用 get(key) 获得相应的 value
(6. Map 删除操作 remove(key)
(7. Map 修改集合内容 同添加,相当于是添加了新的内容,将之前内容覆盖
相关文章推荐
- 黑马程序员-JAVA学习之常用集合List,Set,Map
- JAVA基础学习之 Map集合、集合框架工具类Collections,Arrays、可变参数、List和Set集合框架什么时候使用等(4)
- java 集合类(collection(list set) map)学习总结
- java集合map,set,list区别
- java中把对象、对象bean、list集合、对象数组、Map和Set以及字符串转换成Json
- Java基础第十四天学习日记_集合、List集合、Set集合
- Java:集合,Array、Collection(List/Set/Queue)、Map的遍历,比如:ArrayList,LinkedList,HashSet,HashMap
- java中集合类list set map三者的区别和应用场合
- map,set,list,等JAVA中集合解析
- JAVA集合的认识[Set,List,Map]
- java 集合架构--[Collection] [List] [Set] [Map] [集合工具类]
- java集合map,set,list区别
- java集合总结-List/Set/Map/Queue
- map,set,list,等JAVA中集合解析【转载 http://zhaosoft.javaeye.com/blog/243586】
- JAVA中集合map,set,list详解
- MAP,SET,LIST,等JAVA中集合解析(了解)
- 浅谈JAVA集合 Map List Set等java集合类
- map,set,list,等JAVA中集合解析
- map,set,list,等JAVA中集合解析(了解)
- (转)map,set,list,等JAVA中集合解析(了解)