Aracılığıyla paylaş


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. Ardından koleksiyondaki adları görüntüler ve son olarak nesnenin Collection kendisini yok etmeden 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

Uyarı

Mümkün olduğunda, Visual Basic Collectionyerine ad alanında System.Collections.Generic veya System.Collections.Concurrent ad alanında 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. Bir 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 herhangi 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.

    Uyarı

    Visual Basic nesnesi, Visual Basic Collection 6.0'daki nesneyle Collection aynı işlevselliğe 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ı yine de koleksiyonu değiştirebilir ve numaralandırıcının bir özel durum oluşturmasına neden olabilir. Numaralandırma sırasında iş parçacığı güvenliğini garanti etmek 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

Name Description
Collection()

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

Özellikler

Name Description
Count

Bir koleksiyondaki öğe 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

Name Description
Add(Object, String, Object, Object)

Bir nesneye öğe Collection 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()

Koleksiyonda yineleyen bir numaralandırıcı döndürür.

GetHashCode()

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

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

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

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

Geçerli Objectbasit 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 bir dize döndürür.

(Devralındığı yer: Object)

Belirtik Arabirim Kullanımları

Name Description
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 gösteren 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()

Koleksiyonda yineleyen bir numaralandırıcı alır.

IList.Add(Object)

Koleksiyona bir öğe 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 nesneye Collection 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 dizinde öğesini 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ı

Name Description
AsParallel(IEnumerable)

Sorgunun paralelleştirilmesini etkinleştirir.

AsQueryable(IEnumerable)

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

Cast<TResult>(IEnumerable)

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

OfType<TResult>(IEnumerable)

Belirtilen türe göre bir IEnumerable öğesinin öğelerini filtreler.

Şunlara uygulanır