Diziler (C# Programlama Kılavuzu)
Aynı türde birden çok değişkeni bir dizi veri yapısına saklayabilirsiniz. Öğelerinin türünü belirterek bir dizi bildirirsiniz. Dizinin herhangi bir türdeki öğeleri depolamasını istiyorsanız, object türü olarak belirtebilirsiniz. C# Birleşik tür sisteminde, tüm türler, önceden tanımlanmış ve Kullanıcı tanımlı, başvuru türleri ve değer türleri, doğrudan veya dolaylı olarak öğesinden devralınır Object .
type[] arrayName;
Örnek
Aşağıdaki örnek, tek boyutlu, çok boyutlu ve pürüzlü Diziler oluşturur:
class TestArraysClass
{
static void Main()
{
// Declare a single-dimensional array of 5 integers.
int[] array1 = new int[5];
// Declare and set array element values.
int[] array2 = new int[] { 1, 3, 5, 7, 9 };
// Alternative syntax.
int[] array3 = { 1, 2, 3, 4, 5, 6 };
// Declare a two dimensional array.
int[,] multiDimensionalArray1 = new int[2, 3];
// Declare and set array element values.
int[,] multiDimensionalArray2 = { { 1, 2, 3 }, { 4, 5, 6 } };
// Declare a jagged array.
int[][] jaggedArray = new int[6][];
// Set the values of the first array in the jagged array structure.
jaggedArray[0] = new int[4] { 1, 2, 3, 4 };
}
}
Diziye genel bakış
Bir dizi aşağıdaki özelliklere sahiptir:
- Bir dizi tek boyutlu, çok boyutlu veya pürüzlüolabilir.
- Boyut sayısı ve her boyutun uzunluğu, dizi örneği oluşturulduğunda oluşturulur. Bu değerler, örneğin kullanım ömrü boyunca değiştirilemez.
- Sayısal dizi öğelerinin varsayılan değerleri sıfır olarak ayarlanır ve başvuru öğeleri olarak ayarlanır
null. - Sivri dizi dizi dizilerdir ve bu nedenle öğeleri başvuru türleridir ve olarak başlatılır
null. - Diziler sıfır dizinli: öğeleri olan bir dizi ' dan ' a
ndizinlenir0n-1. - Dizi öğeleri, bir dizi türü de dahil olmak üzere herhangi bir türde olabilir.
- Dizi türleri, soyut temel türden türetilmiş başvuru türleridir Array . Tüm diziler IList ve uygular IEnumerable . Bir dizi boyunca yinelemek için foreach ifadesini kullanabilirsiniz. Tek boyutlu diziler de ve uygular IList<T> IEnumerable<T> .
Varsayılan değer davranışı
- Değer türlerinde, dizi öğeleri varsayılan değerolan 0 bit düzeniyle başlatılır; öğelerin değeri olacaktır
0. - Tüm başvuru türleri ( Nullable) dahil olmak üzere, değerleri vardır
null. - Nullable değer türleri için,
HasValueolarak ayarlanırfalseve öğeleri olarak ayarlanırnull.
Nesne Olarak Diziler
C# ' de, diziler aslında nesneler ve yalnızca C ve C++ ' da olduğu gibi bitişik belleğin adreslenebilir bölgelerini değildir. Array tüm dizi türlerinin soyut temel türüdür. Özellikleri ve olan diğer sınıf üyelerini kullanabilirsiniz Array . Bunun bir örneği, Length bir dizinin uzunluğunu almak için özelliğini kullanmaktır. Aşağıdaki kod, dizi uzunluğunu, numbers yani 5 adlı bir değişkene atar lengthOfNumbers :
int[] numbers = { 1, 2, 3, 4, 5 };
int lengthOfNumbers = numbers.Length;
ArraySınıfı, dizileri sıralamak, aramak ve kopyalamak için diğer birçok yararlı yöntem ve özellik sağlar. Aşağıdaki örnek, Rank bir dizinin boyut sayısını göstermek için özelliğini kullanır.
class TestArraysClass
{
static void Main()
{
// Declare and initialize an array.
int[,] theArray = new int[5, 10];
System.Console.WriteLine("The array has {0} dimensions.", theArray.Rank);
}
}
// Output: The array has 2 dimensions.
Ayrıca bkz.
- Tek boyutlu dizileri kullanma
- Çok boyutlu dizileri kullanma
- Pürüzlü dizileri kullanma
- Dizilerle foreach kullanma
- Dizileri bağımsız değişkenler olarak geçirme
- Örtük olarak yazılan diziler
- C# Programlama Kılavuzu
- Koleksiyonlar
Daha fazla bilgi edinmek için, bkz. C# Dil Belirtimi. Dil belirtimi, C# sözdizimi ve kullanımı için kesin bir kaynaktır.