1. 程式人生 > >Java 容器的基本概念

Java 容器的基本概念

java容器類類庫的用途時"儲存物件",並將其劃分為兩個不同的概念:

1)Collection(採集).一個獨立元素的序列,這些元素都服從一條或多條規則,List必須按照插入的順序儲存元素,而Set不能有重複元素,Queue按照排隊規則來確定物件產生的順序(通常與它們被插入的順序相同)

2)Map.一組成對的"鍵值對"物件,允許你使用鍵來查詢值,ArrayList允許你使用數字來查詢值,因此在某種意義上講,它將數字與物件關聯在了一起.對映表允許我們使用另一個物件,它也被稱為"關聯陣列",因為它將某些物件與另外一些物件關聯在了一起,或者被稱為"字典",因為你可以使用鍵物件來查詢值物件,就像在字典中使用單詞來定義一樣,Map是強大的程式設計工具

儘管並非總是這樣,但在理想情況下,你所編寫的大部分程式碼都是在與這些介面打交道,並且你唯一需要指定所使用的精確型別的地方就是在建立的時候,

List<Apple> apples = new ArrayList<Apple>();//注意ArrayList已經向上轉型為List

使用介面的目的在於如果你決定去修改你的實現,你所需要的只是在創建出修改來,

List<Apple> apples = new LinkedList<Apple>();

//注意向上轉型並非總能湊效,因為某些類具有額外的功能,
//例如LinkedList具有在List介面中沒有的額外方法,而TreeMap也具有Map中沒有的方法

Collection介面概括了序列的概念----- 一種存放一組物件的方式

//: holding/SimpleCollection.java
package object;
import java.util.*;

public class SimpleCollection {
  public static void main(String[] args) {
    Collection<Integer> c = new ArrayList<Integer>();//不可用Set
    for(int i = 0; i < 10; i++)
      c.add(i); 
// Autoboxing for(Integer i : c) System.out.print(i + ", "); } } /* Output: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, *///:~