您的位置:首页 > 职场人生

程序员==java基础===集合

2016-07-12 23:43 253 查看

J集合

集合

       数组长度是固定,当添加的元素超过了数组的长度时需要对数组重新定义,太麻烦,java内部给我们提供了集合类,能存储任意对象,长度是可以改变的,随着元素的增加而增加,随着元素的减少而减少 

数组和集合的区别

      区别1 : 

              数组既可以存储基本数据类型,又可以存储引用数据类型,基本数据类型存储的是值,引用数据类型存储的是地址值
      集合只能存储引用数据类型(对象)集合中也可以存储基本数据类型,但是在存储的时候会自动装箱变成对象

      区别2:

       数组长度是固定的,不能自动增长
    集合的长度的是可变的,可以根据元素的增加而增长

单列集合:体系结构

 1.Collection --
接口(单列集合的顶层接口)

   ----List
接口  特点:存取有序(怎么存就怎么取),有索引,可以存储重复
 ArrayList 类   底层数据结构数组
 LinkedList 类 底层是链表数据结构
 Vector 类      
底层也是数组数据结构

   ---- Set
接口  特点:存取无序(存和取的顺不一致) , 没有索引, 不可以重复
            HashSet    类  底层是哈希表(哈希算法)
            TreeSet     类 底层数据结构是二叉树

 首先介绍collection、是一个抽象的接口

1、是所有集合的父类,所有子类继承;

2.基本方法

        怎么创建对象:   使用多态父类引用指向子类对象

    Collection c = new ArrayList();

 

    boolean add(E e)  增加的方法  E代表Object (everything)

    boolean remove(E e)  移除方法

    void clear() 清空容器

    boolean contains(Object o) 判断是否包含某一个对象

    int size() 获取集合的长度

    boolean isEmpty() 判断集合是否为空

3.遍历集合

   把集合转成数组,再进行遍历

   toArray();方法,后面还会学习一个方法方法,将集合转化成我们需要的类型的数组。

 

    在遍历数组

  

 
publicclass Demo_List {

publicstaticvoid main(String[] args) {

Collection<String >   cc = new ArrayList<String>();

Object[] array=  cc.toArray();

cc.clear();

for (inti = 0; i < array.length; i++) {

cc.add((String)  array[i]);

}

}

}


 
 

   4.Collection
带All的方法

     boolean addAll(Collection c)  这个方法只能添加集合, 并且添加进去的集合,与元集合融合.

     boolean removeAll(Collection c)     移除交集

     boolean containsAll(Collection c)   判断这个集合中是否包含另一个集合

     boolean retainAll(Collection c)       取交集(原集合改变返回true,原集合不变返回false)

    5.迭代器

    Iterator  接口, 作用相当与一个扫描器,遍历方式一个一个扫元素,扫到一个获取一个.

    如何获取迭代器对象.

    Collectionc = new ArrayList();

    Iteratorit=  c.iterator();  //通过Collection的iterator()获取迭代器对象

    1)先判断有没有元素 boolean hasNext()

     boolean b = it.hasNext()

    2) 获取元素

    Objecto = it.next();

    3)但是一般集合会有多个元素

       Collectionc = new ArrayList();

       c.add(newPerson())

       c.add(newPerson())

       Iteratorit=  c.iterator();  //通过Collection的iterator()获取迭代器对象  具体的对象用的是ArrayList中的Itr内部类对象

       while(it.hasNext()){  //如果为true就说有下一个元素

           //就该获取

      

<strong><span style="font-size:14px;"></span></strong> 
 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java 集合