multidimensional arrays
Bu Öğretici, Örneklerle C # 'da Çok Boyutlu Diziler ve Tırtıklı Diziler Hakkında Her şeyi Açıklar. Çok boyutlu diziler, Dikdörtgen Diziler olarak da bilinir:
Önceki eğitimimizde Diziler ve Tek Boyutlu Diziler hakkındaki her şeyi araştırdık.
Bu eğitimde, örneklerle birlikte C # 'da Çok Boyutlu Diziler ve Jagged Diziler hakkında ayrıntılı bilgi edineceğiz.
=> Derinlemesine C # Eğitim Eğiticilerimizi Buradan Keşfedin
Ne öğreneceksin:
C # Çok Boyutlu Diziler
Çok boyutlu diziler, dikdörtgen diziler olarak da bilinir. Çok boyutlu diziler ayrıca iki veya üç boyutlu diziler olarak sınıflandırılabilir.
Verilerin sıralı bir şekilde depolandığı tek boyutlu dizilerin aksine, çok boyutlu bir dizi, verileri tablo biçiminde, yani satırlar ve sütunlar biçiminde depolar. Bu tablo şeklindeki veri düzenlemesi, matris olarak da bilinir.
2 Boyutlu Diziler
Çok boyutlu dizinin en basit şekli iki boyutlu bir dizidir. İki boyutlu bir dizi, birkaç tek boyutlu diziyi bir araya getirerek oluşturulabilir. Aşağıdaki şekil kavramı daha iyi anlamaya yardımcı olacaktır.
Yukarıdaki görüntü, 2 boyutlu dizinin nasıl göründüğünün grafiksel bir temsilidir. Bir satır ve sütuna sahip olarak belirtilir. Bu nedenle, iki boyutlu dizinin her bir yapı taşı, satır numarasını ve sütun numarasını temsil eden dizinden oluşacaktır.
Çok boyutlu diziler, tek boyutlu diziler gibi bildirilir; tek fark, satırları, sütunları vb. Temsil etmek için köşeli parantezin içine virgül eklenmesidir.
string( , ) strArray = new string(2,2);
Şimdi, iki boyutlu bir diziyi başlatmak için bir örneğe bakalım.
2 boyutlu bir dizi şu şekilde bildirilir:
string ( , ) fruitArray = new string (2,2) { {“apple” , “mango”} , /* values for row indexed by 0 */ {“orange”, “banana”} , /* values for row indexed by 1 */ };
Örneğin, diyelim ki dizi elemanımda “i” satırı ve “j” sütunu varsa, aşağıdaki dizin dizisini (i, j) kullanarak ona erişebiliriz.
string ( , ) fruitArray = new string (2,2) { {“apple” , “mango”} , /* values for row indexed by 0 */ {“orange”, “banana”} , /* values for row indexed by 1 */ }; /* output for the elements present in array*/ for (int i = 0; i <2; i++) { for (int j = 0; j < 2; j++) { Console.WriteLine('fruitArray({0},{1}) = {2}', i, j, fruitArray(i,j)); } } Console.ReadKey();
Aşağıdaki programın çıktısı:
fruitArray (0,0) = elma
fruitArray (0,1) = mango
fruitArray (1.0) = turuncu
fruitArray (1,1) = muz
Açıklama:
Programın ilk bölümü Array bildirimi. Satır boyutu 2 ve sütun boyutu 2 olan dizge tipinde bir dizi tanımladık. Bir sonraki bölümde, diziye for döngüsünü kullanarak erişmeye çalıştık.
Değerlere erişmek için iç içe geçmiş bir for döngüsü kullandık. Dıştaki for döngüsü satır numarasını sağlar, yani 'sıfırıncı' satırla başlayacak ve sonra ilerleyecektir. İç for döngüsü sütun numarasını tanımlar. İlk for döngüsü tarafından iletilen her satır numarasıyla, ikinci for döngüsü bir sütun numarası atar ve hücredeki verilere erişir.
C # 'ta Pürüzlü Diziler
C # ile kullanılabilen başka bir dizi türü de Jagged Array'dir. Sivri uçlu bir dizi, dizilerden oluşan bir dizi olarak tanımlanabilir. Pürüzlü diziler, diğer veri türleri yerine dizileri depolamak için kullanılır.
Tırtıklı bir dizi, iki köşeli parantez kullanılarak başlatılabilir; burada birinci köşeli parantez, tanımlanmakta olan dizinin boyutunu belirtir ve ikinci parantez, tırtıklı dizi içinde depolanacak dizi boyutunu belirtir.
Jagged Array Bildirimi
Tartışıldığı gibi, pürüzlü bir dizi aşağıdaki sözdizimi ile başlatılabilir:
string( )( ) stringArr = new string(2)( );
Tırtıklı bir dizi, farklı uzunluklara sahip birden çok diziyi depolayabilir. Bir uzunluk 2 dizisi ve başka bir 5 uzunluk dizisi tanımlayabiliriz ve bunların her ikisi de aynı pürüzlü dizide saklanabilir.
Jagged Array İçerisindeki Dolgu Elemanı
Önce bir Jagged Array'i başlatalım.
arrayJag(0) = new string (2) ; arrayJag(1) = new string (3) ;
Yukarıdaki örnekte, köşeli parantez içinde tanımlanmış bir boyut dizisini içeren “0” ve “1” indeksli bir dize tipi pürüzlü dizi başlattık. 0. dizin, uzunluk 2 olan bir dize türü dizisi içerir ve '1' dizini, uzunluk 3 olan bir dize türü dizisi içerir.
Bir diziyi böyle başlattık. Şimdi pürüzlü bir dizinin içine değerleri başlatalım ve koyalım.
arrayJag(0) = new string (2) {“apple”, “mango”}; arrayJag(1) = new string (3) {“orange”, “banana”, “guava”};
Dolayısıyla, yukarıdaki örnekte gösterildiği gibi, tırtıklı dizi de değerlerle bildirilebilir. Değer eklemek için, değerler listesiyle birlikte belirtilen pürüzlü diziden sonra küme parantezi yerleştiririz.
Ayrıca, pürüzlü diziyi bildirirken başlatmak da mümkündür.
Bu, aşağıdaki yaklaşım kullanılarak yapılabilir.
string()() jaggedArray = new string (2)() { new string() {“apple”, “mango”}, new string() {“orange”, “banana”, “guava”} };
Yukarıdaki örnekte, 'jaggedArray' adında 2 boyutunda bir Jagged dizi tanımladık ve sonra kıvrımlı parantez içinde onu oluşturan dizileri tanımladık ve ilan ettik.
Jagged Bir Diziden Veri Alma
Şimdiye kadar verileri Jagged dizisine koymayı öğrendik. Şimdi, bir Jagged dizisinden veri alma yöntemini tartışacağız. Daha önce tartıştığımız aynı örneği kullanacağız ve bu diziden tüm verileri almaya çalışacağız.
string()() jaggedArray = new string (2)() { new string() {“apple”, “mango”}, new string() {“orange”, “banana”, “guava”} }; /* retrieve value from each array element */ for (int i = 0; i Aşağıdaki programın çıktısı:
elma mango
turuncu muz guava
Açıklama:
tutulmada java dosyası nasıl oluşturulur
Öğeleri çaprazlamak için iki döngü kullandık. İlk for döngüsü, Jagged dizisi için indeksi tanımladı. Bir başka iç içe geçmiş for döngüsü, verilen pürüzlü dizi indeksinde bulunan diziyi çaprazlamak için kullanıldı, sonra sonucu konsola yazdırdık.
Hatırlanacak noktalar:
- Pürüzlü dizi, bir dizi dizisidir. yani dizileri değerleri olarak saklar.
- Sivri uçlu dizi, belirtilen dizin mevcut değilse aralık dışında bir istisna atar.
Sonuç
Bu eğitimde, C # 'ta Jagged ve Çok Boyutlu diziler hakkında bilgi edindik. İki boyutlu bir dizinin nasıl açıklanacağını ve başlatılacağını öğrendik. Ayrıca iki boyutlu bir diziden veri almak için basit bir program oluşturduk.
Daha sonra bir dizi dizisi olan Jagged dizisi hakkında ayrıntılı olarak tartıştık.
Jagged dizi, dizileri değerler olarak sakladığı için kendi içinde benzersizdir. Çentikli diziler diğer dizilere oldukça benzerdir, tek fark sakladıkları değer türüdür.
=> Herkes İçin ÜCRETSİZ C # Eğitim Dersleri
Önerilen Kaynaklar
- STL'deki Diziler
- C # Dizi: C # 'da Bir Dizi Nasıl Bildirilir, Başlatılır ve Erişilir?
- C ++ 'da Çok Boyutlu Diziler
- Örneklerle C ++ Dizileri
- C ++ 'da İşlevlerle Dizileri Kullanma
- VBScript Dizileri: DIM, REDIM, Bölme ve Ubound Dizi İşlevlerini Kullanma
- Dizileri Kullanarak MongoDB'ye Birden Fazla Belge Ekleme
- Java DataTypes, Loops, Arrays, Switch ve Assertions