top of page

Collections nədir?



ArrayList nədir?


Normalda yaratdığımız Array'ın RAM'da sabit bir size'ı olur. Bunu ya array'ın instance'ını yaradan zaman set edirik, yada ki array'ın size'ını instance'ını yaratdığımız zaman içinə əlavə etdiyimiz elementlərlə müəyyən etmiş oluruq. ArrayList isə bu cəhətdən flexible'dır. Yəni ona yeni element əlavə etdikcə RAM'da size'ı böyüyür. İlk öncə normal bir Array'ın instance'ını yaradıb ondan sonra ArrayList'i incələyək.


string[] arr = new string[2];
string[] arr2 = new string[]
{
   "One",
   "Two"
};

ArrayList ArrList = new ArrayList();
ArrayList students = new ArrayList();
students.Add("Elvin");
students.Add("Cabir");
students.Add("Gunel");
students.Add("Samire");
students.Add("Orxan");
students.Add("Ruzgar");

int capacity = students.Capacity;
int count = students.Count;

Capacity hər zaman 4-dən başlayır və 2-yə vurularaq artır. ArrayList'ə yeni məlumatlar əlavə edib sildikcə Capacity hər zaman ikiyə vurularaq artır (şişir) və RAM'dakı ölçüsünü sıfırlamaq üçün TrimToSize() method'undan istifadə edirik. Bunun üçün internetdən TrimToSize() method'unu araşdıra bilərsiniz. Clear() method'u isə, ümumiyyətlə ArrayList'in içindəki element'lərin hamısını silir.


Hashtable nədir?


HashTable'ın bir fərqi odur ki, məlumatları index dəyərinə görə yox key dəyərinə görə saxlayır. Bu da key-value pair adlanır. Yəni bir elementin dəyərini almaq üçün index'ə görə yox, açar sözünə, yəni key'inə görə müraciət edilir.

Hashtable ht = new Hashtable();

            ht.Add("Human", "Insan");
            ht.Add("House", "Ev");
            ht.Add("You", "Sen");

SortedList nədir?


SortedList'in Hashtable'dan fərqi odur ki, əlavə olunan elementləri Key dəyərinə görə avtomatik sıralama edir. Bir məsələdə var ki, key dəyəri bir tipdə olmalıdır. Yəni ilk olaraq key'i string əlavə edib sonrakı elementin key dəyərini int olaraq əlavə etmək olmur. Bunun səbəbi də odur ki, onları sıralama üçün müqayisə edə bilmir. İndi ingiliscə və azərbaycanca sözlərin saxlanıldığı bir SortedList nümunəsi göstərəcəm.

SortedList engAz = new SortedList(); 

engAz.Add("World", "Dünya");
engAz.Add("Me", "Mən");
engAz.Add("Phone", "Telefon");
engAz.Add("City", "Şəhər");
//engAz.Add(10, "Ten"); //(string ilə int'i müqayisə edə bilməz)

Stack nədir?


Stack'i database'lə işləyənlər daha aydın başa düşər. Hal-hazırda sadəcə ümumi işləmə prinsipini göstərəcəm.

Stack st= new Stack();

st.Push("One");
st.Push("Two");
st.Push("Three");
st.Push("Four");

object obj = st.Pop();

Pop method'u sonuncu elementi qaytarır və özündən remove edir.

object obj1 = st.Peek();

Peek isə sonuncu datanı qaytarır ancaq collection'dan remove etmir.


Queue nədir?

Queue q = new Queue();
q.Enqueue("One");
q.Enqueue("Two");
q.Enqueue("Three");
q.Enqueue("Four");
object obj = q.Peek();

Peek method'u ilk dəyəri qaytarır və dəyəri saxlayır yəni sıralamadan silmir.

object obj1 = q.Dequeue();

Dequeue method'u isə ilk dəyəri qaytardıqdan sonra dəyəri silir və sıralamadan çıxardır.

 

Proqramlaşdırma'ya yeni başlayırsınızsa və ya proqramlaşdırma kursları axtarırsınızsa, bizə müraciət edə bilərsiniz.

Recent Posts

See All
bottom of page