ArrayList, klasik dizilerle çalışırken karşılaştığımız bir çok sorunu ortadan kaldıran yeni bir koleksiyon sınıfıdır. Klasik dizilerde karşılaşılan derleme aşamasında dizi boyutunun bilinmesi şartı ArrayList kullanıldığında aranmamaktadır. ArrayList kullanımı ile ilgili örneklere yazının devamında ulaşabilirsiniz.
Örnek 1: 10 adet sayının tek ve çift olanlarını ayrı ayrı dizilere atan, dizilerin içinde kaç adet sayı oldugunu ve ortalamalarını gösteren Console örneği.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | static void Main(string[] args) { ArrayList tekSayilar = new ArrayList(); ArrayList ciftSayilar = new ArrayList(); int ortalama=0, toplam=0; Random rnd = new Random(); for(int i=0;i<10;i++) { int sayi = rnd.Next(1, 100); Console.Write(sayi + " "); toplam += sayi; if(sayi%2==0) { ciftSayilar.Add(sayi); } else { tekSayilar.Add(sayi); } } Console.WriteLine(); Console.WriteLine("============================================================"); ortalama = toplam / 10; Console.WriteLine("Sayıların Ortalaması : {0}", ortalama); Console.WriteLine("Tek Sayıların Adeti : {0}", tekSayilar.Count); Console.WriteLine("Çift Sayıların Adeti : {0}", ciftSayilar.Count); Console.ReadKey(); } |
Ekran Çıktısı:
Örnek 2: Klavyeden girilen 10 adet sayının asal ve asal olmayanlarını ayrı diziye atan dizilerin içinde kaç adet sayı olduğunu ve ortalamalarını ekrana yazdıran örnek.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 | using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace dizi_asal { class Program { public static bool asalmi(int sayi) { bool durum = false; int kontrol = 0; for (int i = 2; i < sayi; i++) { if (sayi % i == 0) //www.yazilimkodlama.com { kontrol = 1; break; } } if (kontrol == 1) { durum = false; } else {//www.yazilimkodlama.com durum = true; } return durum; } static void Main(string[] args) { int toplam = 0, ortalama = 0; ArrayList asalSayilar = new ArrayList(); ArrayList asalOlmayanSayilar = new ArrayList(); for (int i = 0; i < 10; i++) { Console.Write("Sayıyı Girin : "); int s = Convert.ToInt32(Console.ReadLine()); toplam += s; if (asalmi(s)) { asalSayilar.Add(s); } else { asalOlmayanSayilar.Add(s); } } ortalama = toplam / 10; Console.WriteLine(); Console.WriteLine("==========================="); Console.WriteLine("ASAL SAYILAR"); foreach (int sayi in asalSayilar) { Console.Write(sayi + " "); } Console.WriteLine(); Console.WriteLine("ASAL OLMAYAN SAYILAR"); Console.WriteLine("==========================="); foreach (int sayi in asalOlmayanSayilar) { Console.Write(sayi + " "); } Console.WriteLine(); Console.WriteLine("==========================="); Console.WriteLine("SAYILARIN ORTALAMASI : {0}",ortalama); Console.ReadKey(); } } } |