Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

C#.NET 5.0 C#.NET 5.0 Eğitimleri Volkan KANAT. Diziler.

Benzer bir sunumlar


... konulu sunumlar: "C#.NET 5.0 C#.NET 5.0 Eğitimleri Volkan KANAT. Diziler."— Sunum transkripti:

1 C#.NET 5.0 C#.NET 5.0 Eğitimleri Volkan KANAT

2 Diziler

3 - Diziler, aynı türdeki verilerin sıralanarak gruğlandırılmasında kullanılan yapılardır. - Dizi içerisinde veriler kaydedilirken, 0 numaralı sıradeğerinden itibaren kaydedilmeye başlanır. - Dizi içerisindeki elemanlara bu index numaraları ile erişim sağlanabilir. - Dizi oluşturulurken dizinin eleman sayısı belirtilmelidir.

4 Diziler int [ ] numara = new int[10]; // numara adında 10 elemanlı integer türünde bir dizi tanımlanmaktadır. - Dizi elemanlarına değer atama işlemi yapılırken, dizi elemanının index değeri köşeli parantez içerisinde yazılarak istenen dizi elemanına atama yapılabilir.

5 Diziler string [ ] adsoyad = new string[3]; adsoyad[0] = “Volkan KANAT”; adsoyad[1] = “Ahmet Mehmet TEKİN”; adsoyad[2] = “Fatih SARILALE”;

6 Diziler - Dizilere tanımlama esnasında da değer ataması yapılabilir. string [ ] adsoyad= { “Volkan”, “Talha”, “Rıfkı” };

7 Tek Boyutlu Diziler - Tek boyutlu diziler, yalnızca eleman sayısı belirtilerek tanımlanan dizilerdir. - Dizilerin boyutu belirtilmedikçe tek byutlu olarak kabul edilirler. - Diziler konusunun başında anlatılan örnekler tek boyutlu dizilerdir.

8 Çok Boyutlu Diziler - Tek boyutlu dizileree benzer şekilde tanımlanır ve kullanılırlar. Farklı olarak virgül karakteri kullanılarak dizi boyutu belirlenir ve kullanılır. string [, ] adsoyad = new string[3,3]; - Yukarıdaki satırda 2 boyutlu 3’er elemanlı string türde adsoyad isimli bir dizi tanımladık. Dizinin toplam eleman sayısını boyut x eleman sayısı şeklinde bulabiliriz. (3 x 3 = 9)

9 Çok Boyutlu Diziler string [, ] adsoyad = { { “Volkan”, “KANAT” }, { “Mustafa”, “AKSU”}, { “Enver”, “ARSLAN” } }; // 2x3=6 - Çok boyutlu dizileri dikdörtgensel ve düzensiz olmak üzere iki gruba ayırabiliriz.

10 Dikdörtgensel Diziler -Dikdörtgensel diziler her satırında eşit sayıda elemanın bulunduğu dizilerdir. Şekli dikdörtgene benzediği için bu isimle adlandırılırlar. int [, ] dizi = new int[3,4] {{1,2,3,4}, {1,2,3,4}, {1,2,3,4} } ;

11 Uygulama -Yukarıda tanımladığımız örnek dizi elemanlarını, konsol ekranında tek tek listeleyen konsol uygulamasının kodlarını yazalım.

12 Uygulama static void Main(string[] args) { int [, ] dizi = new int[3,4] {{1,2,3,4}, {1,2,3,4}, {1,2,3,4} } ; for(int i=0; i

13 Düzensiz Diziler -Her bir satırı farklı uzunlukta olan diziler düzensiz diziler olarak adlandırılırlar. - İç içe diziler şeklinde tanımlanırlar. Yani bir dizinin elemanları tanımlanırken her bir elemanın içerisinde başka bir dizinin elemanları tanımlanabilir. int [] [] düzensiz_dizi = { new int[] { 1 }, new int[] { 1, 2, 3 }, new int[] { 1, 2 } };

14 Uygulama - Düzensiz bir dizi oluşturarak içerisindeki elemanları listeleyen konsol uygulamasının kodlarını yazalım.

15 Uygulama static void Main(string[] args) { int [] [] duzensiz_dizi = { new int[] { 1}, new int[] { 1, 2, 3}, new int[] { 1, 2} } ; foreach(var satir in duzensiz_dizi) { foreach(var eleman in satir) Console.Write( “{0} ”, eleman ); Console.WriteLine(); } Console.ReadLine(); }

16 Dizileri Yeniden Boyutlandırma - Bir dizi boyutu belirterek tanımlanabildiği gibi parantez içi boş bırakılarak da boyutu belirtilmeden tanımlanabilir. - Gerek boyutu belirtilerek tanımlanmış olsun gerekse boyutu belirtilmeden tanımlanmış olsun program içerisinde boyutu yeniden belirlenebilir.

17 Dizileri Yeniden Boyutlandırma string [ ] adsoyad = new string[2]; adsoyad[0] = “Volkan”; adsoyad[1] = “Mehmet”; adsoyad =new string[3]; adsoyad[2] = “Faruk”;

18 CreateInstance Metodu - Yeni bir diziyi, değişken tipini ve eleman sayısını belirleyerek tanımlamak için kullanılan metoddur. Array.CreateInstance(Değişken Türü, Eleman Sayısı, Boyut)

19 CreateInstance Metodu static void Main(string[] args) { Array okulturu = Array.CreateInstance (typeof(string), 3); string [] okulturleri = (string[])okulturu; okulturleri[0] = ( “Endüstri Meslek” ); okulturleri[1] = ( “Teknik” ); okulturleri[2] = ( “Anadolu Teknik” ); Console.Write(okulturleri[1]); Console.ReadKey(); }

20 IsArray Metodu - Bir değişken dizi değişkeni olup olmadığını anlamak amacı ile kullanılan metoddur. - Geriye true ya da false olmak üzere boolean değer göndürür.

21 IsArray Metodu static void Main(string[] args) { string[] okulturu = { “Anadolu”, “Meslek”, “Teknik” }; string ad = “Volkan”; Type tip; tip = okulturu.GetType(); Console.WriteLine( tip.IsArray ); tip = ad.GetType(); Console.WriteLine(tip.IsArray); Console.ReadKey(); }

22 SetValue Metodu - Dizi elemanlarına değer atamak amacı ile kullanılan metoddur. SetValue( “Atanacak değer”, atanacak index numarası );

23 SetValue Metodu static void Main(string[] args) { Array okulturleri = Array.CreateInstance(typeof(string), 3); okulturleri.SetValue( “Endüstri Meslek”, 0 ); okulturleri.SetValue( “Teknik”, 1 ); okulturleri.SetValue( “Anadolu Teknik”, 2 ); Console.Write(okulturleri.GetValue(2)); Console.ReadKey(); }

24 GetValue Metodu - Dizi içerisindeki elemanlara erişmek amacı ile kullanılır. GetValue( index değeri );

25 GetValue Metodu static void Main(string[] args) { Array okulturleri = Array.CreateInstance(typeof(string), 3, 3); diller.SetValue( “ VB.NET”, 0, 0 ); diller.SetValue( “ C#”, 0, 1 ); diller.SetValue( “C++”, 0, 2 ); diller.SetValue( “Python”, 1, 0 ); diller.SetValue( “Perl”, 1, 1 ); diller.SetValue( “Ruby”, 1, 2 ); diller.SetValue( “ASP.NET”, 2, 0 ); diller.SetValue( “JavaScript”, 2, 1 ); diller.SetValue( “Silverlight”, 2, 2 ); Console.WriteLine(diller.GetValue(0, 1)); Console.ReadKey(); }

26 Join Metodu - Dizi içerisindeki değerlerin hepsini bir string değişkene, belirtilen ayırıcı karakter kullanarak aktaran metoddur. String.Join(ayırıcı karakter, dizi değişken adı)

27 Uygulama - ListBox içerisindeki değerleri join metodu ile karakterini kullanarak bir TextBox içerisine aktaran form uygulamasının kodlarını yazalım.

28 Uygulama private void button1_Click(object sender, EventArgs e) { string [] diller; diller = new string[listBox1.Itens.Count]; byte i; for(i=0; i<= listBox1.Items.Count – 1; i++) { diller[i] = listBox1.Items[i].ToString(); } textBox1.Text = string.Join( “,”, diller );

29 Contains Metodu - Bir dizi içerisinde bir elemanın var olup olmadığını bulma amacı ile kullanılır. Geriye boolean bir değer döndürür. - Eğer aranan değer bulundu ise true, bulunmadı ise false değeri dönecektir. Contains(aranan değer)

30 Contains Metodu static void Main(string[] args) { string aranan; string[] isimler = new string[4]; isimler[0] = “ Hasan ”; isimler[0] = “Murat”; isimler[0] = “Talha”; isimler[0] = “Onur”; Console.Write( “Aranan degeri giriniz: ” ); aranan = Console.ReadLine(); if (isimler.Contains(aranan) == false){ Console.Write( “Aranan deger bulunamadı ” ); } else{ Console.Write( “Aranan deger bulundu ” ); } Console.ReadKey(); }

31 BinarySearch Metodu - Dizi içerisinde aranan elemanın index numarasını geriye döndüren metoddur. - Bu metod ile arama yapabilmek için üzerinde arama işlemi yapılacak dizinin sıralı olması gerekir. BinarySearch(Arama yapılacak dizi değişkenin adı, aranacak değer, aramanın başlayacağı index değeri)

32 BinarySearch Metodu static void Main(string[] args) { int indexno; string aranan; Array okulturu = Array.CreateInstance(typeof(string), 3); okulturu.SetValue( “Endüstri Meslek”, 0 ); okulturu.SetValue( “Teknik”, 1 ); okulturu.SetValue( “Anadolu Teknik”, 2 ); Console.Write( “Aranan degeri giriniz: ” ); aranan = Console.ReadLine(); indexno = Array.BinarySearch(okulturu, aranan.ToString()); if(indexno < 0){ Console.Write( “Aranan deger bulunamadı“ ); } else{ Console.Write( “Aranan deger bulundu. İndex degeri = “ + indexno ); } Console.ReadKey(); }

33 Volkan KANAT Web: Mailito: Twitter: https://twitter.com/VolkanKanatMuhhttps://twitter.com/VolkanKanatMuh

34 Dinlediğiniz İçin Teşekkürler


"C#.NET 5.0 C#.NET 5.0 Eğitimleri Volkan KANAT. Diziler." indir ppt

Benzer bir sunumlar


Google Reklamları