0Pricing
C# Academy · Ders

Koleksiyon İfadesi Söz Dizimi

Dizileri, listeleri ve span'leri aynı biçimde başlatın.

Koleksiyon İfadesi Söz Dizimi, CoddyKit'te ücretsiz bir C# Academy dersidir. Bu, 4 dersinin 1. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, C# Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. C# Academy kursu toplamda 4 dersten oluşur.

Koleksiyon İfadeleri (C# 12)

C# 12, koleksiyon ifadelerini sunar: diziler, listeler, span türleri ve daha fazlasını oluşturmak için kullanılan tek bir köşeli parantez sözdizimi. new int[] { 1, 2, 3 } yerine yalnızca [1, 2, 3] yazmanız yeterlidir.

using System;

int[] numbers = [1, 2, 3, 4, 5];
Console.WriteLine(string.Join(",", numbers)); // 1,2,3,4,5

Tek Sözdizimi, Birçok Hedef

Aynı [...] değişmezi, hedef bir dizi, List<T> veya Span<T> olduğunda çalışır. Derleyici doğru oluşturma biçimini seçer.

using System;
using System.Collections.Generic;

int[] arr = [1, 2, 3];
List<int> list = [4, 5, 6];
Span<int> span = [7, 8, 9];
Console.WriteLine(arr.Length + " " + list.Count + " " + span.Length);

Boş Koleksiyonlar

Boş bir koleksiyon ifadesi yalnızca [] biçimindedir. Bu, Array.Empty<T>() veya new List<T>() kullanmaktan daha anlaşılırdır ve hedef türü otomatik olarak belirler.

using System;
using System.Collections.Generic;

int[] empty = [];
List<string> names = [];
Console.WriteLine(empty.Length + " " + names.Count); // 0 0

Uzun Başlatıcıları Değiştirme

Koleksiyon ifadeleri, eski başlatıcı söz diziminin gerektirdiği ayrıntıları ortadan kaldırır. Aşağıdaki iki biçimi karşılaştırın.

using System;
using System.Collections.Generic;

// old
List<int> oldWay = new List<int> { 1, 2, 3 };
// new
List<int> newWay = [1, 2, 3];
Console.WriteLine(oldWay.Count == newWay.Count); // True

İç İçe Koleksiyonlar

Düzensiz diziler veya listelerden oluşan listeler oluşturmak için koleksiyon ifadelerini iç içe kullanabilirsiniz.

using System;

int[][] grid = [[1, 2], [3, 4], [5, 6]];
Console.WriteLine(grid[1][0]); // 3

Öğe Olarak İfadeler

Değişkenler, yöntem çağrıları ve aritmetik işlemler de dahil olmak üzere her ifade öğe olabilir.

using System;

int x = 10;
int[] values = [x, x * 2, x + 5, Math.Abs(-3)];
Console.WriteLine(string.Join(",", values)); // 10,20,15,3

Çok Boyutluluk Hakkında Not

Koleksiyon ifadeleri dikdörtgen diziler (int[,]) değil, düzensiz diziler (int[][]) oluşturur. Dikdörtgen diziler hâlâ kendi söz dizimlerini kullanır.

using System;

int[][] jagged = [[1, 2, 3], [4, 5]];
Console.WriteLine(jagged[0].Length + " " + jagged[1].Length); // 3 2

Aralıklarla Çalışma

Koleksiyon ifadeleri Span<T> ve ReadOnlySpan<T> hedeflerini kullanabildiğinden derleyici yığın üzerinde ayırma yapabilir ve kısa ömürlü veriler için öbekte gereksiz çöp oluşmasını önleyebilir.

using System;

ReadOnlySpan<int> stackData = [1, 2, 3, 4];
int total = 0;
foreach (int n in stackData) total += n;
Console.WriteLine(total); // 10

Koleksiyonları Yöntemlere Geçirme

Bir parametrenin türü koleksiyon olduğunda, çağrı noktasında doğrudan bir koleksiyon ifadesi geçirebilirsiniz.

using System;

static int Sum(int[] xs) {
    int t = 0;
    foreach (int x in xs) t += x;
    return t;
}

Console.WriteLine(Sum([2, 4, 6])); // 12

Okunabilirlik Kazanımı

Koleksiyon ifadeleri, yapılandırma tabloları veya sınama düzenekleri gibi veri ağırlıklı kodlarda özellikle etkilidir; köşeli ayraçlar odağı değerlerde tutar.

using System;

string[] days = ["Mon", "Tue", "Wed", "Thu", "Fri"];
Console.WriteLine(days[^1]); // Fri

Koleksiyon Döndürme

Bir yöntem, oluşturma işlemini yönlendiren dönüş türüyle birlikte bir koleksiyon ifadesi döndürebilir.

using System;

static int[] Primes() => [2, 3, 5, 7, 11];

Console.WriteLine(string.Join(",", Primes())); // 2,3,5,7,11

Hızlı Sınama

Koleksiyon ifadesi temellerini anlayıp anlamadığınızı sınayın.

Özet

C# 12 koleksiyon ifadesi söz dizimini öğrendiniz.

  • [1, 2, 3], uzun başlatıcıların yerini alır.
  • [], boş bir koleksiyondur.
  • Hedef türüyle belirlenir; diziler, listeler ve aralıklar için kullanılabilir.
  • İç içe köşeli ayraçlar düzensiz diziler oluşturur.

Sıkça Sorulan Sorular

“Koleksiyon İfadesi Söz Dizimi” dersi ücretsiz mi?

Evet — “Koleksiyon İfadesi Söz Dizimi” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve C# Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. C# Academy kursu toplamda 4 dersten oluşur.

“Koleksiyon İfadesi Söz Dizimi” dersinde ne öğreneceğim?

Dizileri, listeleri ve span'leri aynı biçimde başlatın. C# Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

C# Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te C# Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 1. dersidir.

“Koleksiyon İfadesi Söz Dizimi” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu C# Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her C# Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Koleksiyon İfadesi Söz Dizimi
  2. Yayma Öğesi
  3. Koleksiyonlarda Hedef Türü Belirleme
  4. Koleksiyon Oluşturucuları
← C# Academy Sayfasına Dön