JAVA中的集合框架简介
2014-08-18 15:53
225 查看
本篇文章主要介绍JAVA中的集合框架。
下面开始介绍集合框架中常用的一些接口和类
特别说明:Set集合底层使用的是Map集合
排序方式有两种:第一种是让元素自身具备比较性,参加比较的元素实现Comparable接口,覆盖CompareTo()方法。第二种是让集合具备比较性,定义一个类实现Comparator接口,覆盖compare()方法,然后将该类的对象作为比较器传入TreeSet的构造函数中。
当两种比较方式都存在时,以比较器的比较方式为主。
ListItrator
ListIterator是Iterator的一个子接口,该接口弥补了Iterator的一些方法上的不足,该接口中有add(E e),set(E e),remove(),hasNext(),next(),hasPrevious(),previous()等,在取出元素的过程中可以进行对元素的操作。
keySet是将map中的键存入Set集合,因为Set可迭代,然后用迭代出来的键进行取值
entrySet是将map中的映射关系存入Set集合,这个关系的数据类型就是Map.Entry
常用方法:
Collections.sort(list):给List集合排序
Collections.sort(list,Comparator):按照比较器的规则给List集合排序
Collections.max(list):获取list集合中的最大元素
Collections.fill(list,e):把List集合中的元素都填充为e
Collections.reverse(list):将list集合反转
Collections.shuffle(list):将集合的顺序打乱
Collections.replace(index,e):将角标为index的元素替换为e
Collections.reverseOrder():传入集合的构造方法,强行反转顺序,也可以
Collections.reverseOrder(Comparator)强行反转比较器顺序
Arrays.toString(arr):将数组转成字符串
Arrays.asList(arr):将数组转成集合
list.toArray(new String[list.size]):将集合list转成数组
下面开始介绍集合框架中常用的一些接口和类
1. Collection:
Collection层次结构 中的根接口。Collection 表示一组对象,这些对象也称为 collection 的元素1) List
List是Collection的一个子接口,List集合有几个特点:元素是有顺序的(存入顺序和取出顺序一致);可以存重复元素;该集合有索引;该集合判断元素是否相同,依据是equals()方法。① ArrayList
ArrayList是List接口的一个实现类。底层使用的是数组的数据结构,查询、修改快,增加、删除比较慢。该集合线程不同步。② LinkedList
LinkedList是List接口的一个实现类。底层使用的是链表的数据结构,查询、修改慢,增加、删除快。③ Vector
Vector是List接口的一个实现类。底层使用数组的数据结构。和ArrayList类似,被ArrayList取代,但是该集合线程同步。2) Set
Set是Collection的一个子接口。Set集合的特点:元素无序(存入顺序和取出顺序不一定一致),不可以放重复元素。特别说明:Set集合底层使用的是Map集合
① HashSet
HashSet是Set接口的一个实现类。底层使用的是哈希表。判断元素唯一性的方法是先判断hashCode()方法是否一样,再判断equals()方法② TreeSet
TreeSet是Set接口的一个实现类。特点:可以对其中的元素进行排序。排序方式有两种:第一种是让元素自身具备比较性,参加比较的元素实现Comparable接口,覆盖CompareTo()方法。第二种是让集合具备比较性,定义一个类实现Comparator接口,覆盖compare()方法,然后将该类的对象作为比较器传入TreeSet的构造函数中。
当两种比较方式都存在时,以比较器的比较方式为主。
2. Iterator
Iterator是一个接口。在Collection的实现类中,都有一个内部类,该内部类用于取出集合中的元素,这些内部类的特点是都实现了Iterator接口,对外提供iterator()方法,用于取得集合中存储的元素。该接口中只有三个方法:hasNext() 、next() 、remove()ListItrator
ListIterator是Iterator的一个子接口,该接口弥补了Iterator的一些方法上的不足,该接口中有add(E e),set(E e),remove(),hasNext(),next(),hasPrevious(),previous()等,在取出元素的过程中可以进行对元素的操作。
3. Map
Map集合存储的是键值对,而且要保证键的唯一性1) HashMap
Map接口的实现类。底层是哈希表,允许存入null键和null值,线程不同步。2) Hashtable
Map接口的实现类。底层是哈希表,不允许存入null键和null值,线程同步,被HashMap所取代。3) TreeMap
Map接口的实现类。底层是二叉树,可以对其中的键进行排序,线程不同步。4) Map集合的取出方式
Map集合有两种取出方式:keySet和entrySetkeySet是将map中的键存入Set集合,因为Set可迭代,然后用迭代出来的键进行取值
entrySet是将map中的映射关系存入Set集合,这个关系的数据类型就是Map.Entry
4.Collections
操作集合的工具类,里面的方法都是静态方法。常用方法:
Collections.sort(list):给List集合排序
Collections.sort(list,Comparator):按照比较器的规则给List集合排序
Collections.max(list):获取list集合中的最大元素
Collections.fill(list,e):把List集合中的元素都填充为e
Collections.reverse(list):将list集合反转
Collections.shuffle(list):将集合的顺序打乱
Collections.replace(index,e):将角标为index的元素替换为e
Collections.reverseOrder():传入集合的构造方法,强行反转顺序,也可以
Collections.reverseOrder(Comparator)强行反转比较器顺序
5.Arrays
操作数组的工具类,里面的方法都是静态方法Arrays.toString(arr):将数组转成字符串
Arrays.asList(arr):将数组转成集合
list.toArray(new String[list.size]):将集合list转成数组
相关文章推荐
- 【慕课笔记】第五章 JAVA中的集合框架(中) 第1节 Map&HashMap简介
- java常用集合框架底层实现简介与注意点
- 【慕课笔记】第四章 JAVA中的集合框架(上) 第2节 Collection接口&List接口简介
- 【慕课笔记】第六章 JAVA中的集合框架(下) 第7节 Comparable&Comparator简介
- Java开发中各种集合框架简介
- Java开发中各种集合框架简介
- Java并发集合框架简介
- 常用的Java Web框架简介
- java 集合框架(Collection)和数组的排序 推荐
- java 集合框架(Collection)和数组的排序
- java 集合 框架小结
- JAVA框架简介
- 全面接触Java集合框架
- Java的集合框架
- Java 集合框架小结
- Java 集合框架与图
- Java 集合框架
- 全面接触Java集合框架
- JAVA框架简介--摘自网友的博客
- Java Collection 集合简介(转)