功能:将储存的数据以某种结构组织,并以特定的方式来访问这些数据,其目标是提供一个处理对象集合的通用框架,减少程序员处理不同对象集合时的编码量 概念:为了解决某一特定问题 预先设计好的一系列具有继承或实现关系的类于接口 集合类 Collection List (有序,线性) 概念:指代集合里的元素是有顺序的,可以通过前一个元素找到下一个元素 List可以有泛型;用来限制可放入集合的对象类型,例:Lis < String> a = new Array< String>(); 遍历:将集合中所有元素访问一次;在List 中有三种方法 1,for循环 2,for each 3,Iterator迭代器:Iterator< String > a = set.Iterator< String>(); while(Iterator a.hasNex()//次方法询问是否有下一个元素){ String s=a.next()//此方法取出来元素; } List 中的方法 1,add() 添加方法 2,addAll(index,collection a) 将一个集合中所有对象插入到指定列表的指定位置 remove()删除指定对象 get(index)得到指定方法 set(index,Object a)替换指定元素 size() 元素个数 List 中的实现类 ArrayList:底层结构为数组,线程不安全 LinkedList:元素存放不连续,一个元素的存储位置不只有元素本身还存有下一个和前一个元素的引用,为双向列表,后一个元素也可以找到前一个元素;底层数据结构为链表 Set (集) 特点:元素存放不能重复,且为无序的 支持遍历:for each;迭代器 支持泛型 Set中的实现类 HashSet: Set 根据两个对象的equals()方法和 HashCode()方法来判断两个对象是否重复;求equals返回true HashCode的值要相同、严格意义上一旦重写了equals方法也要冲重写hashCode方法 equals返回true hashCode返回值也要相同 equals返回false hashCode返回值不一定要相同 Map(映射) 特点:元素存放按照键值对,不允许出现重复的键 Map中的方法 put(键,值);当键不重复时添加元素,有重复时覆盖元素 get(键);获得指定元素 KeySet()将Map中所有键取出形成Set集 values()将Map中所有的值取出形成一个collection remove(键)删除元素 containsKey(//键) Map方法 HashMap;TreeMap 遍历:for each;迭代器 工具算法类 Arrays 操作数组类 Collections 升序排列 sort(// 集合)方法 混序 shuffle() 比较器 Comparable 内部比较器; 实现 Comparable<>接口,及实现compareTo(){}方法 Comparator 外部比较器;需要新建一个类来实现Comparator及compare()方法