Collection Sınıf

Tanım

Visual Basic Collection , birim olarak adlandırılan sıralı bir öğe kümesidir.

public ref class Collection sealed : System::Collections::IList
public ref class Collection sealed : System::Collections::IList, System::Runtime::Serialization::IDeserializationCallback, System::Runtime::Serialization::ISerializable
public sealed class Collection : System.Collections.IList
[System.Serializable]
public sealed class Collection : System.Collections.IList, System.Runtime.Serialization.IDeserializationCallback, System.Runtime.Serialization.ISerializable
type Collection = class
    interface ICollection
    interface IEnumerable
    interface IList
type Collection = class
    interface ICollection
    interface IList
[<System.Serializable>]
type Collection = class
    interface ICollection
    interface IList
    interface ISerializable
    interface IDeserializationCallback
Public NotInheritable Class Collection
Implements IList
Public NotInheritable Class Collection
Implements IDeserializationCallback, IList, ISerializable
Devralma
Collection
Öznitelikler
Uygulamalar

Örnekler

Aşağıdaki örnek, bir kullanıcının koleksiyona Collection nesneler (adlar) ekleyebileceği bir nesne names ve iletişim kutusu oluşturur. Daha sonra koleksiyondaki adları görüntüler ve son olarak nesnenin kendisini yok etmeden Collection koleksiyonu boşaltılır.

Bunun nasıl çalıştığını görmek için, Projemenüsünden Sınıf Ekle komutunu seçin ve her örneğin adlarını tutmak için modül düzeyinde nameClass (türPublic instanceName) adlı instanceName bir ortak değişken bildirin. Varsayılan adı olarak nameClassbırakın. Aşağıdaki kodu kopyalayıp başka bir modülün Genel bölümüne yapıştırın ve ardından başka bir yordamdaki deyimiyle classNamer başlatın. (Bu örnek yalnızca sınıfları destekleyen konak uygulamalarıyla çalışır.)

Public Class nameClass
    Public instanceName As String
End Class
Sub classNamer()
    ' Create a Visual Basic Collection object.
    Dim names As New Microsoft.VisualBasic.Collection()
    Dim key As Integer
    Dim msg As String
    Dim name As String
    Dim nameList As String = ""
    ' 1. Get names from the user to add to the collection.
    Do
        Dim inst As New nameClass()
        key += 1
        msg = "Please enter a name for this object." & vbCrLf &
              "Press Cancel to see names in collection."
        name = InputBox(msg, "Name the Collection items")
        inst.instanceName = name
        ' If user entered a name, add it to the collection.
        If inst.instanceName <> "" Then
            names.Add(inst, CStr(key))
        End If
    Loop Until name = ""
    ' 2. Create and display a list of names from the collection.
    For Each oneInst As nameClass In names
        nameList &= oneInst.instanceName & vbCrLf
    Next oneInst
    MsgBox(nameList, , "Instance Names in names Collection")
    ' 3. Remove elements from the collection without disposing of the collection.
    For count As Integer = 1 To names.Count
        names.Remove(1)
        ' Since Visual Basic collections are reindexed automatically, 
        ' remove the first member on each iteration.
    Next count
End Sub

Açıklamalar

Not

Mümkün olduğunda, ad alanında System.Collections.Generic veya System.Collections.Concurrent ad alanında Visual Basic Collectionyerine genel koleksiyonları kullanmanız gerekir. Daha fazla bilgi için bkz . Koleksiyonlar - C# veya Koleksiyonlar - Visual Basic.

Visual Basic Collection nesnesi, ilgili bir öğe grubuna tek bir nesne olarak başvurmak için kullanışlı bir yol sağlar. Bir koleksiyondaki öğeler veya öğeler yalnızca koleksiyonda mevcut olmalarıyla ilişkilendirilmelidir. Koleksiyonun öğelerinin aynı veri türünü paylaşması gerekmez.

Aşağıdaki örnekte gösterildiği gibi, diğer nesneleri oluşturduğunuz gibi bir koleksiyon oluşturabilirsiniz.

Dim coll As New Microsoft.VisualBasic.Collection()  

Bir koleksiyon oluşturduktan sonra aşağıdakilerden birini yapabilirsiniz:

  • yöntemiyle Add bir öğe ekleyin.

  • yöntemiyle bir öğeyi Remove kaldırın.

  • yöntemiyle Clear tüm öğeleri kaldırın.

  • özelliğiyle koleksiyonun kaç öğe içerdiğini Count öğrenin.

  • yöntemiyle Contains belirli bir öğenin mevcut olup olmadığını denetleyin.

  • özelliğiyle koleksiyondan belirli bir öğeyi Item[] döndürür.

  • For Each... ile koleksiyonun tamamında yineleme yapın... Next Deyimi.

    Not

    Visual Basic nesnesi, Visual Basic Collection 6.0'daki nesneyle Collection aynı işlevlere sahip olsa da, ikisi COM ortamında birlikte çalışamaz.

    Dikkat

    Visual Basic Collection aracılığıyla yineleme, iş parçacığı açısından güvenli bir yordam değildir. Koleksiyon eşitlenmiş olsa bile, diğer iş parçacıkları koleksiyonu yine de değiştirebilir ve numaralandırıcının bir özel durum oluşturmasına neden olur. Numaralandırma sırasında iş parçacığı güvenliğini sağlamak için koleksiyonu kilitleyin veya diğer iş parçacıkları tarafından yapılan değişikliklerden kaynaklanan özel durumları yakalayın. Bir programlama öğesini kilitleme hakkında daha fazla bilgi için bkz . SyncLock Deyimi.

Oluşturucular

Collection()

Yeni bir Visual Basic Collection nesnesi oluşturur ve döndürür.

Özellikler

Count

Bir koleksiyondaki öğelerin sayısını alır.

Item[Int32]

Nesnenin belirli bir Collection öğesini konuma veya anahtara göre alır.

Item[Object]

Nesnenin belirli bir Collection öğesini konuma veya anahtara göre alır.

Item[String]

Nesnenin belirli bir Collection öğesini konuma veya anahtara göre alır.

Yöntemler

Add(Object, String, Object, Object)

Bir nesneye Collection öğe ekler.

Clear()

Visual Basic Collection nesnesinin tüm öğelerini siler.

Contains(String)

Visual Basic Collection nesnesinin belirli bir anahtara sahip bir öğe içerip içermediğini gösteren bir değer döndürür.

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetEnumerator()

Toplulukta yinelenen bir numaralandırıcı döndürür.

GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
Remove(Int32)

Bir öğeyi nesneden Collection kaldırır.

Remove(String)

Bir öğeyi nesneden Collection kaldırır.

ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)

Belirtik Arabirim Kullanımları

ICollection.CopyTo(Array, Int32)

öğesinin öğelerini Collection belirli Array bir Arraydizinden başlayarak öğesine kopyalar.

ICollection.Count

Bu koleksiyondaki öğe sayısını alır.

ICollection.IsSynchronized

Nesneye Collection erişimin eşitlenip eşitlenmediğini belirten bir değer alır (iş parçacığı güvenli).

ICollection.SyncRoot

Nesneye erişimi Collection eşitlemek için kullanılabilecek bir nesne alır.

IDeserializationCallback.OnDeserialization(Object)

Nesne grafiğinin tamamı Collection seri durumdan çıkarıldıktan sonra çalışır.

IEnumerable.GetEnumerator()

Toplulukta tekrarlanan bir numaralayıcı alır.

IList.Add(Object)

Bir öğeyi koleksiyona ekler.

IList.Clear()

Nesneden Collection tüm öğeleri kaldırır.

IList.Contains(Object)

Nesnenin Collection belirli bir değer içerip içermediğini belirler.

IList.IndexOf(Object)

Nesnedeki belirli bir öğenin dizinini Collection belirler.

IList.Insert(Int32, Object)

Belirtilen dizindeki Collection nesneye bir öğe ekler.

IList.IsFixedSize

Nesnenin sabit bir boyuta Collection sahip olup olmadığını gösteren bir değer alır.

IList.IsReadOnly

Nesnenin Collection olup olmadığını gösteren bir değer alır.

IList.Item[Int32]

Belirtilen dizindeki öğeyi alır veya ayarlar.

IList.Remove(Object)

Belirli bir nesnenin ilk oluşumunu nesneden Collection kaldırır.

IList.RemoveAt(Int32)

Belirtilen dizindeki Collection nesne öğesini kaldırır.

ISerializable.GetObjectData(SerializationInfo, StreamingContext)

Nesneyi seri hale Collection getirmek için gereken verileri döndürür.

Uzantı Metotları

Cast<TResult>(IEnumerable)

öğesinin IEnumerable öğelerini belirtilen türe atar.

OfType<TResult>(IEnumerable)

Bir öğesinin IEnumerable öğelerini belirtilen türe göre filtreler.

AsParallel(IEnumerable)

Sorgunun paralelleştirilmesini sağlar.

AsQueryable(IEnumerable)

bir IEnumerable öğesini öğesine IQueryabledönüştürür.

Şunlara uygulanır