Sunday, May 25, 2014

Collection List dalam bahasa pemograman C#

Pada .NET framework, tersedia beberapa class yang khusus disediakan sebagai tempat penyimpanan dan mengambil kumpulan data (collection of data). Beberapa dari class tersebut adalah array, list, queue, dan stack.

Pada posting kali ini saya akan terlebih dahulu menjelaskan tentang list.

Pada dasarnya fungsi list itu sama dengan array bedanya adalah list itu bersifat dinamis. jika kita membuat sebuah array satu dimensi berukuran 10, maka array tesebut akan terus berukuran 10 meskipun hanya memakai 5 elemen. Kita tidak dapat menghilangkan 5 elemen sisanya. Berbeda dengan array, class list memiliki method untuk menambahkan dan mengurangi elemen dari list. Dengan demikian, tidak akan ada memori yang terbuang kerena menyimpan data yang tidak terpakai.

Berikut ini adalah contoh program yang menggunakan list :

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace PenggunaanList
{
    class Program
    {
        static void Main(string[] args)
        {
            List<int> myList = new List<int>();

            //menambahkan list
            myList.Add(3);
            myList.Add(2);
            myList.Add(5);
            myList.Add(6);

            //Menampilkan isi list
            Console.WriteLine("Isi list myList : ");
            foreach (int i in myList)
            {
                Console.WriteLine("{0}", i);
            }
            Console.WriteLine();

            //Menghapus isi list berdasarkan nilai list
            myList.Remove(5);

            //menampilkan kembali isi list setelah dilakukan penhapusan
            Console.WriteLine("Isi list myList stelah di hapus : ");
            foreach (int i in myList)
            {
                Console.WriteLine("{0}", i);
            }
            Console.WriteLine();

            //Menghapus isi list berdasarkan index list
            myList.RemoveAt(0);

            //menampilkan kembali isi list
            Console.WriteLine("Isi list myList stelah di hapus menurut index : ");
            foreach (int i in myList)
            {
                Console.WriteLine("{0}", i);
            }
            Console.WriteLine();

            //Menghapus semua elemen list
            myList.Clear();

            //menampilkan kembali isi list
            Console.WriteLine("Isi list myList stelah semua list dihapus : ");
            if (myList.Count() == 0) //Memeriksa apakah isi list == 0
            {
                Console.WriteLine("List kosong");
            }
            else
            {
                foreach (int i in myList)
                {
                    Console.WriteLine("{0}", i);
                }
            }
            Console.WriteLine();

        }
    }
}
Jika dijalankan hasilnya adalah seperti berikut :