Senin, 25 November 2013

Contoh Arraylist Series - bagaimana mengkonversi Array ke Arraylist dalam C#

Contoh Arraylist Series - bagaimana mengkonversi Array ke Arraylist dalam C#

Dalam posting sebelumnya 'Mengkonversi Arraylist ke Array' kita membahas bagaimana mengkonversi ArrayList ke array. Hari ini, mari kita lihat beberapa contoh tentang bagaimana mengkonversi array ArrayList (atau daftar generik). Dalam beberapa situasi, kita perlu membuat ArrayList berdasarkan array, sehingga kita dapat dengan mudah menambahkan atau menghapus item dari daftar kemudian. Pada dasarnya setidaknya ada dua cara untuk melakukannya. Yang termudah adalah menggunakan pembuat ArrayList untuk membuat sebuah instance baru dari Array langsung. Versi berlebihan konstruktor menerima parameter ICollection. Dan karena Array mengimplementasikan antarmuka ICollection, sehingga bisa menggunakan kode di bawah ini untuk membuat sebuah instance baru dari ArrayList:

string [] itemArray = new string [] "item1", "item2", "item3";
ArrayList arraylist = ArrayList(itemArray) baru;

Metode lain yang bisa kita gunakan untuk melakukan konversi adalah metode AddRange. Seperti konstruktor ini menerima parameter ICollection. Penggunaan adalah seperti

string [] itemArray = new string [] "item1", "item2", "item3";
ArrayList arraylist2 = ArrayList(itemArray.Length) baru; / / set ukuran awal ArrayList untuk menghindari masalah kinerja yang mungkin.
arraylist2.AddRange(itemArray);

Ini sedikit rumit daripada yang pertama, tapi itu adalah pilihan yang baik ketika kita sudah memiliki ArrayList. Sekarang mari kita lihat contoh kode lengkap:

/ / Kode dibuat oleh Mavis
/ / dan telah diuji pada vs2010 dengan .net 4
menggunakan sistem;
menggunakan System.Collections.Generic;
menggunakan System.Linq;
menggunakan System.Text;
menggunakan System.Collections;

namespace ConsoleApplication11
[4]: item5

Di akhir posting ini, saya ingin berbicara beberapa topik lanjutan tentang konversi ini dua cara. Apakah Anda tahu perbedaan antara mereka? Jika kita menggunakan merah gerbang .NET Reflector untuk melihat bagian dalam konstruktor ArrayList, kita akan melihat mereka benar-benar sama. Apa constructor menggunakan untuk menginisialisasi ArrayList adalah pemeriksaan pengecualian, ukuran inisialisasi dan AddRange metode yang sama seperti apa yang kita gunakan dalam metode 2. Kode sumber constructor seperti di bawah ini.

/ / Kode pendekodean dari Microsoft.NET\Framework\v2.0.50727\mscorlib.dll oleh Red gerbang .NET Reflector
Umum ArrayList (ICollection c)


Sekarang saatnya untuk mencoba kode sendiri dan jangan lupa meninggalkan komentar pada bolg saya.

Tidak ada komentar:

Posting Komentar