Collection Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
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
Collection6.0'daki nesneyleCollectionaynı işlevselliğe sahip olsa da, ikisi COM ortamında birlikte çalışamaz.Dikkat
Visual Basic
Collectionaracı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 |
| Item[Object] |
Nesnenin belirli bir |
| Item[String] |
Nesnenin belirli bir |
Yöntemler
| Name | Description |
|---|---|
| Add(Object, String, Object, Object) |
Bir nesneye öğe |
| Clear() |
Visual Basic |
| Contains(String) |
Visual Basic |
| 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 |
| Remove(String) |
Bir öğeyi nesneden |
| 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. |