Collection Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Visual Basic Collection
adalah sekumpulan item yang diurutkan yang dapat disebut sebagai unit.
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
- Warisan
-
Collection
- Atribut
- Penerapan
Contoh
Contoh berikut membuat Collection
objek names
dan kotak dialog tempat pengguna dapat menambahkan objek (nama) ke koleksi. Kemudian menampilkan nama-nama dalam koleksi, dan akhirnya mengosingkan koleksi tanpa membuang objek itu Collection
sendiri.
Untuk melihat cara kerjanya, pilih perintah Tambahkan Kelas dari menu Proyek dan deklarasikan variabel publik yang disebut instanceName
pada tingkat modul (jenis nameClass
Public instanceName
) untuk menyimpan nama setiap instans. Biarkan nama default sebagai nameClass
. Salin dan tempel kode berikut ke bagian Umum modul lain, lalu mulai dengan pernyataan classNamer
di prosedur lain. (Contoh ini hanya berfungsi dengan aplikasi host yang mendukung kelas.)
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
Keterangan
Catatan
Jika memungkinkan, Anda harus menggunakan koleksi generik di System.Collections.Generic namespace atau System.Collections.Concurrent namespace, bukan Visual Basic Collection
. Untuk informasi selengkapnya, lihat Koleksi - C# atau Koleksi - Visual Basic.
Objek Visual Basic Collection
menyediakan cara mudah untuk merujuk ke sekelompok item terkait sebagai objek tunggal. Item, atau elemen, dalam koleksi hanya perlu dikaitkan dengan fakta bahwa item tersebut ada dalam koleksi. Elemen koleksi tidak harus berbagi jenis data yang sama.
Anda dapat membuat koleksi dengan cara yang sama seperti Anda membuat objek lain, seperti yang diilustrasikan contoh berikut.
Dim coll As New Microsoft.VisualBasic.Collection()
Setelah membuat koleksi, Anda dapat melakukan salah satu hal berikut ini:
Tambahkan elemen dengan Add metode .
Hapus elemen dengan Remove metode .
Hapus semua elemen dengan Clear metode .
Cari tahu berapa banyak elemen yang dikandung koleksi dengan Count properti .
Periksa apakah elemen tertentu ada dengan Contains metode .
Mengembalikan elemen tertentu dari koleksi dengan Item[] properti .
Iterasi melalui seluruh koleksi dengan Untuk Masing-masing ... Pernyataan Berikutnya.
Catatan
Meskipun objek Visual Basic
Collection
memiliki fungsionalitas yang identik denganCollection
objek di Visual Basic 6.0, keduanya tidak dapat beroperasi di lingkungan COM.Perhatian
Iterasi melalui Visual Basic
Collection
bukanlah prosedur yang aman untuk utas. Bahkan jika koleksi disinkronkan, utas lain masih dapat memodifikasi koleksi, menyebabkan enumerator melemparkan pengecualian. Untuk menjamin keamanan utas selama enumerasi, kunci koleksi atau tangkap pengecualian yang dihasilkan dari perubahan yang dibuat oleh utas lain. Untuk informasi selengkapnya tentang mengunci elemen pemrograman, lihat Pernyataan SyncLock.
Konstruktor
Collection() |
Membuat dan mengembalikan objek Visual Basic Collection baru. |
Properti
Count |
Mendapatkan jumlah elemen dalam koleksi. |
Item[Int32] |
Mendapatkan elemen |
Item[Object] |
Mendapatkan elemen |
Item[String] |
Mendapatkan elemen |
Metode
Add(Object, String, Object, Object) |
Menambahkan elemen ke |
Clear() |
Menghapus semua elemen objek Visual Basic |
Contains(String) |
Mengembalikan nilai yang menunjukkan apakah objek Visual Basic |
Equals(Object) |
Menentukan apakah objek yang ditentukan sama dengan objek saat ini. (Diperoleh dari Object) |
GetEnumerator() |
Mengembalikan enumerator yang melakukan iterasi melalui koleksi. |
GetHashCode() |
Berfungsi sebagai fungsi hash default. (Diperoleh dari Object) |
GetType() |
Mendapatkan dari instans Type saat ini. (Diperoleh dari Object) |
MemberwiseClone() |
Membuat salinan dangkal dari saat ini Object. (Diperoleh dari Object) |
Remove(Int32) |
Menghapus elemen dari |
Remove(String) |
Menghapus elemen dari |
ToString() |
Mengembalikan string yang mewakili objek saat ini. (Diperoleh dari Object) |
Implementasi Antarmuka Eksplisit
ICollection.CopyTo(Array, Int32) |
Menyalin elemen Collection ke Array, dimulai dari indeks tertentu Array . |
ICollection.Count |
Mendapatkan jumlah item dalam koleksi ini. |
ICollection.IsSynchronized |
Mendapatkan nilai yang menunjukkan apakah akses ke objek disinkronkan Collection (thread-safe). |
ICollection.SyncRoot |
Mendapatkan objek yang dapat digunakan untuk menyinkronkan akses ke Collection objek. |
IDeserializationCallback.OnDeserialization(Object) |
Berjalan setelah seluruh Collection grafik objek dideserialisasi. |
IEnumerable.GetEnumerator() |
Mendapatkan enumerator yang melakukan iterasi melalui koleksi. |
IList.Add(Object) |
Menambahkan item ke koleksi. |
IList.Clear() |
Menghapus semua item dari Collection objek. |
IList.Contains(Object) |
Menentukan apakah Collection objek berisi nilai tertentu. |
IList.IndexOf(Object) |
Menentukan indeks item tertentu dalam Collection objek. |
IList.Insert(Int32, Object) |
Sisipkan item ke Collection objek pada indeks yang ditentukan. |
IList.IsFixedSize |
Mendapatkan nilai yang menunjukkan apakah Collection objek memiliki ukuran tetap. |
IList.IsReadOnly |
Mendapatkan nilai yang menunjukkan apakah objek tersebut Collection . |
IList.Item[Int32] |
Mendapatkan atau mengatur elemen pada indeks yang ditentukan. |
IList.Remove(Object) |
Menghapus kemunculan pertama objek tertentu dari Collection objek . |
IList.RemoveAt(Int32) |
Collection Menghapus item objek pada indeks yang ditentukan. |
ISerializable.GetObjectData(SerializationInfo, StreamingContext) |
Mengembalikan data yang diperlukan untuk membuat serial objek Collection . |
Metode Ekstensi
Cast<TResult>(IEnumerable) |
Mentransmisikan elemen dari ke IEnumerable jenis yang ditentukan. |
OfType<TResult>(IEnumerable) |
Memfilter elemen berdasarkan IEnumerable jenis yang ditentukan. |
AsParallel(IEnumerable) |
Mengaktifkan paralelisasi kueri. |
AsQueryable(IEnumerable) |
Mengonversi menjadi IEnumerableIQueryable. |