天天看點

Java學習——Collection集合

概念

  • 集合

    集合是java中提供的一種容器,可以用來存儲多個資料。

  • 集合和數組的差別

    數組的長度是固定的。集合的長度是可變的。

    數組中存儲的是同一類型的元素,可以存儲基本資料類型值。集合存儲的都是對象。而且對象的類型可以不一緻。在開發中一般當對象多的時候,使用集合進行存儲。

定義

Collection是一個接口,是以無法直接定義對象,可以使用多态來定義其子類對象

import java.util.ArrayList;
import java.util.Collection;
import java.util.HashSet;
import java.util.TreeSet;

public class Main {
    public static void main(String[] args) {
        Collection<String> coll = new ArrayList<>();
        Collection<String> coll1 = new HashSet<>();
        Collection<Integer> coll2 = new TreeSet<>();
    }
}
           

分類

集合按照其存儲結構可以分為兩大類,分别是單列集合

java.util.Collection

和雙列集合

java.util.Map

Collection:單列集合類的根接口,用于存儲一系列符合某種規則的元素,它有兩個重要的子接口,分别是

java.util.List

java.util.Set

  • 其中,

    List

    的特點是元素有序、元素可重複。
  • Set

    的特點是元素無序,而且不可重複。
  • List

    接口的主要實作類有

    java.util.ArrayList

    java.util.LinkedList

    Set

    接口的主要實作類有

    java.util.HashSet

    java.util.TreeSet

常用方法

在Collection中定義了單列集合(List和Set)通用的一些方法,這些方法可用于操作所有的單列集合。方法如下:

方法 說明

public boolean add(E e)

把給定的對象添加到目前集合中 。

public void clear()

清空集合中所有的元素。

public boolean remove(E e)

把給定的對象在目前集合中删除。

public boolean contains(E e)

判斷目前集合中是否包含給定的對象。

public boolean isEmpty()

判斷目前集合是否為空。

public int size()

傳回集合中元素的個數。

public Object[] toArray()

把集合中的元素,存儲到數組中。

public Iterator<E> iterator()

傳回在此 collection 的元素上進行疊代的疊代器。

boolean add(E e)

  • 把給定的對象添加到目前集合中
import java.util.ArrayList;
import java.util.Collection;

public class Main {
    public static void main(String[] args){

        //建立集合對象
        Collection<String> coll = new ArrayList<String>();

        //向集合中添加元素
        coll.add("張三");
        coll.add("李四");
        coll.add("王二");

        //周遊集合
        for(String s : coll) {
            System.out.println(s);
        }

    }
}
           
Java學習——Collection集合

void clear()

  • 清空集合中所有的元素。
import java.util.ArrayList;
import java.util.Collection;

public class Main {
    public static void main(String[] args){

        //建立集合對象
        Collection<String> coll = new ArrayList<String>();

        //向集合中添加元素
        coll.add("張三");
        coll.add("李四");
        coll.add("王二");

        //清空集合
        coll.clear();
        
        //周遊集合
        for(String s : coll) {
            System.out.println(s);
        }

    }
}

           
Java學習——Collection集合

boolean remove(E e)

  • 把給定的對象在目前集合中删除。
import java.util.ArrayList;
import java.util.Collection;

public class Main {
    public static void main(String[] args){

        //建立集合對象
        Collection<String> coll = new ArrayList<String>();

        //向集合中添加元素
        coll.add("張三");
        coll.add("李四");
        coll.add("王二");

        //删除 王二
        coll.remove("王二");

        //周遊集合
        for(String s : coll) {
            System.out.println(s);
        }

    }
}

           
Java學習——Collection集合

boolean contains(E e)

  • 判斷目前集合中是否包含給定的對象。
import java.util.ArrayList;
import java.util.Collection;

public class Main {
    public static void main(String[] args){

        //建立集合對象
        Collection<String> coll = new ArrayList<String>();

        //向集合中添加元素
        coll.add("張三");
        coll.add("李四");
        coll.add("王二");

        //判斷是否包含 王二
        System.out.println(coll.contains("王二"));

        //判斷是否包含 趙四
        System.out.println(coll.contains("趙四"));

    }
}

           
Java學習——Collection集合

boolean isEmpty()

  • 判斷目前集合是否為空。
import java.util.ArrayList;
    import java.util.Collection;

    public class Main {
        public static void main(String[] args){

            //建立集合對象
            Collection<String> coll = new ArrayList<String>();

            //向集合中添加元素
            coll.add("張三");
            coll.add("李四");
            coll.add("王二");

           //判斷是否為空
            System.out.println(coll.isEmpty());

            //清空集合
            coll.clear();

            //判斷是否為空
            System.out.println(coll.isEmpty());
        }
    }

           
Java學習——Collection集合

int size()

  • 傳回集合中元素的個數。
import java.util.ArrayList;
    import java.util.Collection;

    public class Main {
        public static void main(String[] args){

            //建立集合對象
            Collection<String> coll = new ArrayList<String>();

            //向集合中添加元素
            coll.add("張三");
            coll.add("李四");
            coll.add("王二");

            //輸出元素個數
            System.out.println(coll.size());

            //删除張三
            coll.remove("張三");

            //輸出元素個數
            System.out.println(coll.size());
        }
    }

           
Java學習——Collection集合

Object[] toArray()

  • 把集合中的元素,存儲到數組中。
import java.util.ArrayList;
    import java.util.Collection;

    public class Main {
        public static void main(String[] args){

            //建立集合對象
            Collection<String> coll = new ArrayList<String>();

            //向集合中添加元素
            coll.add("張三");
            coll.add("李四");
            coll.add("王二");
            
            //将集合中的元素轉化為字元串數組
            String str[] = coll.toArray(new String[0]);

            //輸出字元串數組中的内容
            for(String s : str) {
                System.out.println(s);
            }
        }
    }

           
Java學習——Collection集合

Iterator iterator()

  • 傳回在此 collection 的元素上進行疊代的疊代器。

關于疊代器我的另一篇部落格中有更加完善的說明。點選看關于疊代器的說明

import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;

public class Main {
    public static void main(String[] args) {
		//使用多态,建立ArrayList
        Collection array = new ArrayList<String>(10);
        array.add("張三");
        array.add("李四");
        array.add("王二");
        
		//建立疊代器對象
        Iterator iter = array.iterator();
    }
}
           

繼續閱讀