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

© 暴走的牛奶 中级黑马   /  2015-8-25 23:29  /  313 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

1. 集合和数组区别
   集合变长
   数组定长
   
   数组存储基本类型,也存储对象
   集合只存储对象,不存储基本类型
   
   数组存储类型单一
   集合存储任意类型对象
   
2. 学习集合
   集合是容器,存储对象
   数据多了存储数组,对象多了存集合
   
   学习集合,主要学习什么
     A. 会存储
     B. 会获取
     C. 熟悉每个集合容器的自身特性
     
  杯子分很多种
    夜光杯 -- 酒
    咖啡杯 -- 咖啡
    水杯    -- 凉白开
   
3. 迭代器
     迭代器,就是获取出集合中存储元素的一种方式 (遍历)
     
       集合顶层接口中定义方法 iterator() 整个Collection下面的小弟都具备
      
   Iterator iterator()作用,返回迭代器对象,返回值是接口类型
       接口是没有对象,返回接口实现类对象
      
   Iterator接口方法
     boolean hasNext() 判断集合中有没有下一个被取出的元素,如果有返回true
     Object  next() 获取出集合中的元素
     void    remove() 移除集合中的元素
     
4. 迭代器的源代码实现 -- ArrayList
interface Iterator{
    boolean hasNext();
    Object next();
    void remove();
}

interface Collection{
    Iterator iterator();
}
//List extends Collection
public class ArrayList implements List{
     public Iterator iterator(){
       // 返回 Iterator 实现类对象
       return new Itr();   
     }
     //定义类内部类,实现接口Iterator
     private class Itr implements Iterator{
         //重写了Iterator接口的三个抽象方法
     }
}
   main(){
      Collection col = new ArrayList();
      Iterator it = col.iterator();
   }


5. List接口
  List接口继承自Collection接口
  List接口三个实现类, ArrayList,LinkedList,Vector
  
  List接口派系集合的特点
         有序的集合   怎么存储的就怎么取出
         允许存储重复元素
         集合中的元素都有索引

2 个回复

倒序浏览
赞一个!!
回复 使用道具 举报
复习下,顶一个
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马