1. 程式人生 > >Java持有對象的方法——容器

Java持有對象的方法——容器

用途 size 工具 lsit span 類庫 under 解決 tex

通常,程序總是根據運行時才知道的某些條件去創建新對象。

在此之前,並不知道所需對象的數量,甚至不知道確切的類型。

所以,為解決這個普遍的編程問題,需要在任意時刻任意位置創建任意數量的對象:

首先,不能依靠創建命名的引用來持有每一個對象了:

MyType aReference;

原因:

不知道實際上會需要多少這樣的引用。大多數語言會提供數組的方式保存對象(應該說是對象的引用)

但是,數組雖然是保存一組對象或者基本類型數據的有效方式,其由於具有固定的尺寸,在一般情況下十分受限。

解決:

Java使用類庫提供了一套相當完整的容器類來解決這個問題。

List、Set、Queue、Map

註意,這些對象類型也稱為集集合類,但是由於Java的類庫中使用了Collection這個名字來指代該類庫的一個特殊子集,因此使用“容器”來稱呼List等。

容器,提供了完善的方法來保存對象,解決對象數量驚人的問題。比如Set對於每一個值只保存一個對象,Map允許你將某些對象於其他一些對象關聯起來的關聯數組。

Java容器類都可以自動地調整尺寸,因此,並不需要擔心容器應該設置為多大。

容器類,是可以顯著增強你編程能力的基本工具。


基本概念

Java容器類庫的用途:保存對象

A:Collection

一個獨立元素的序列

List:必須安裝插入順序保存元素

Set:不能有重復元素

Queue:按照排隊規則確定對象產生的順序(一般與被插入的順序相同)

B:Map

一組成對的“鍵值對”對象,允許使用鍵來查找值

ArrayLsit:允許使用數字來查找值,從某種意義上,它將數字和對象關聯在一起

映射表:允許使用另一個對象來查找某個對象,被稱為“關聯數組”(因為它將對象與另外一些對象關聯在一起),或者稱為“字典”(因為可以使用鍵對象來查找值對象,就像在字典中使用單詞來定義一樣)

示例:ArrayList是最基本最可靠的容器

創建一個實例
add()插入對象
get()訪問這些對象 此時需要使用索引,就像數組一樣,但不需要方括號
size()方法 可以知道有多少元素添加了進來,從而不會不小心因索引越界而引發錯誤

Java持有對象的方法——容器