HOW TO:加入、刪除和擷取集合項目 (Visual Basic)

Visual Basic Collection 類別包含內建功能讓您可以加入、刪除和擷取項目。

  • 建立或取得新的項目 (例如新客戶) 後,您可能會想將該項目加入集合。

  • 當某項目不再屬於某集合時,可能就會想將該項目從集合中刪除,例如,當員工離職時。

  • 您可能想要擷取集合中的某個項目以編輯其內容,例如,變更學生的電話號碼。

注意事項注意事項

在增加及刪除項目時,Collection 物件會自動更新其數值索引數目。 因此,任何指定項目的數值索引會經常改變。 因此,請不要儲存數值索引值並預期它稍後會在程式中擷取相同的項目。 請使用索引鍵來這麼做。

若要將項目加入集合

  • 請使用 Add 方法,並依據其 Key 來指定項目。

    object.Add(Item, Key [, {Before | After}])

    例如,若要使用工作訂單的 ID 屬性當做索引鍵,將工作訂單物件加入工作訂單集合,就可以執行下列呼叫。

    workOrders.Add(woNew, woNew.ID)
    

    前述呼叫假設 ID 屬性為字串。 如果屬性是數字 (例如,Long 整數),請使用 ToString 方法將其轉換成 Key 引數所需的 String 值。

    workOrders.Add(woNew, woNew.ID.ToString())
    

    索引鍵的使用是選擇性 (Optional)。 如果不想索引鍵與集合中的物件相關聯,可以加入不含索引鍵的物件。

    workOrders.Add(woNew)
    

    您可以使用選擇性引數 Before 和 After 來維護已排序的物件集合。 要加入的項目會放在集合中,Before 或 After 引數會分別放在所識別項目的前面或後面。 例如,將 Before 設定等於 1 插入項目至集合的開頭,因為 Collection 物件是以 1 為起始。

    workOrders.Add(woNew, woNew.ID, 1)
    

    同樣地,After 引數會在指定的索引之後加入項目。 以下範例將項目加入做為第三個項目。

    workOrders.Add(woNew, woNew.ID,,2)
    

    您可以指定 Before 或 After 的值,但不可同時指定。

若要刪除集合中的項目

  • 請使用 Remove 方法,並依據其 Index 或 Key 來指定項目。

    object.Remove({Index | Key})

    Index 引數是要刪除項目的位置。 Key 引數與用來將項目增加至集合中的字串相同。 如果集合中第三個項目的索引鍵是 "W017493",則您可使用下列任一陳述式來刪除它。

    workOrders.Remove(3)
    workOrders.Remove("W017493")
    

若要刪除集合中所有的項目

  • 請使用 Clear 方法。

    object.Clear()

    Clear 方法會將集合清空。

若要擷取集合中的項目

  1. 請使用 Item 屬性,並依據其 Index 或 Key 來指定項目。

    variable = object.Item({Index | Key})

    至於 Remove 方法,Index 引數是集合中的項目位置,而 Key 引數則是加入項目時所使用的字串。 採用與 Remove 方法的相同範例,下列任一陳述式都會擷取集合中的第三個項目。

    woCurrent = workOrders.Item(3)
    woCurrent = workOrders.Item("W017493")
    
    注意事項注意事項

    如果使用數字做為索引鏈,在將數字傳遞到 Add 或 Remove 方法或 Item 屬性之前,必須使用 ToString 方法將數字轉換成字串。 Visual Basic Collection 物件會假設數字為索引而非索引鍵字串。

  2. 如果您在編譯時期即知道索引鍵,也可以使用字典存取運算子 (!) 來存取集合項目,而不必將索引鍵包含在引號或括弧中。 前述呼叫的程式碼可能如下。

    woCurrent = workOrders!W017493
    

請參閱

概念

Visual Basic 集合類別

Visual Basic 中的陣列

Visual Basic 中的集合