10002--Java集合--Collection 接口

来源:互联网 发布:mpv for mac 编辑:程序博客网 时间:2024/06/06 09:31
--Collection 接口是 ListSetQueue接口的父接口,
   该接口里定义的方法既可用于操作 Set集合,
   也可用于操作 List Queue 集合。
 
--JDK不提供此接口的任何直接实现,
   而是提供更具体的子接口(如:SetList)实现。
 
--在 Java5 之前,Java 集合会丢失容器中所有对象的数据类型,
  把所有对象都当成 Object类型处理;
  从 Java5 增加了泛型以后,Java集合可以记住容器中对象的数据类型
 
常用方法
 size()--集合中元素个数
 add(Object)--向集合中添加一个元素
 addAll(collection)--讲coll中包含的所有元素添加到当前集合
 isEmpty()--判断是否为空
 clear()--清空元素
 contains(object)--判断集合中是否包含指定的obj元素
    判断的依据:根据元素所在的类的equals()方法进行判断
    明确:如果存入集合中的元素是自定义类的对象。要求:自定义类要重写equals()方法!
  containsAll(collection)
  retainAll(coll2)--求当前集合与coll的共有的元素,返回给当前集合
  remove(object)--删除集合中的obj元素。若删除成功,返回true。否则,返回false
  removeAll(collection)--从当前集合中删除包含在coll中的元素。
  hashCode()--
  toArray()--将集合转化为数组
  iterator()--迭代器
    Iterator it = coll.iterator(); 
    while(it.hasNext())
     {
         sysout(it.next());
     }
     
 
lIterator对象称为迭代(设计模式的一种)主要用于遍历Collection集合中的元素。
l
l所有实现了Collection接口的集合类都有一个iterator()方法,用以返回一个实现了Iterator接口的对象
l
lIterator 仅用于遍历集合Iterator本身并不提供承装对象的能力。
 如果需要创建 Iterator对象,则必须有一个被迭代的集合。
 
 
 * 1.存储对象可以考虑:①数组 ②集合
 * 2.数组存储对象的特点:Student[] stu = new Student[20]; stu[0] = new Student();....
 *    >弊端:①一旦创建,其长度不可变。②真实的数组存放的对象的个数是不可知。
 * 3.集合
 *     Collection接口
 *       |------List接口:存储有序的,可以重复的元素
 *         |------ArrayList(主要的实现类)、LinkedList(对于频繁的插入、删除操作)、Vector(古老的实现类、线程安全的)
 *       |------Set接口:存储无序的,不可重复的元素
 *         |------HashSet、LinkedHashSet、TreeSet
 *     Map接口:存储“键-值”对的数据
 *       |-----HashMap、LinkedHashMap、TreeMap、Hashtable(子类:Properties)
0 0
原创粉丝点击