Enum Dönüşümleri ve Ayrıştırma
Enum'lar, tam sayılar ve dizeler arasında dönüşüm yapın.
Enum Dönüşümleri ve Ayrıştırma, CoddyKit'te ücretsiz bir C# Academy dersidir. Bu, 4 dersinin 3. 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.
Numaralandırmadan Tamsayıya
Sayısal değeri almak için numaralandırmayı temel türüne (int) ile dönüştürün.
using System;
enum Level { Low, Medium, High }
class Program {
static void Main() {
int n = (int)Level.High;
Console.WriteLine(n);
}
}Tamsayıdan Numaralandırmaya
Bir sayıyı yeniden numaralandırma türüne dönüştürün. Değerin tanımlı bir üyeye karşılık gelmesi gerekmez; bu nedenle gerektiğinde denetleyin.
using System;
enum Level { Low, Medium, High }
class Program {
static void Main() {
Level l = (Level)2;
Console.WriteLine(l);
}
}IsDefined ile Doğrulama
Enum.IsDefined, ona güvenmeden önce bir sayının veya adın gerçek bir üyeye karşılık geldiğini doğrular.
using System;
enum Level { Low, Medium, High }
class Program {
static void Main() {
Console.WriteLine(Enum.IsDefined(typeof(Level), 1));
Console.WriteLine(Enum.IsDefined(typeof(Level), 9));
}
}Numaralandırmadan Dizeye
ToString, görüntüleme ve günlük kaydı için kullanışlı olan üye adını döndürür.
using System;
enum Level { Low, Medium, High }
class Program {
static void Main() {
Console.WriteLine(Level.Medium.ToString());
}
}Bir Dizgeden Ayrıştırma
Enum.Parse, bir adı yeniden numaralandırma değerine dönüştürür; ancak ad geçersizse hata verir.
using System;
enum Level { Low, Medium, High }
class Program {
static void Main() {
Level l = (Level)Enum.Parse(typeof(Level), "High");
Console.WriteLine(l);
}
}Genel Parse
Genel biçim olan Enum.Parse<T>, dönüştürme gereğini ortadan kaldırır ve temiz okunur.
using System;
enum Level { Low, Medium, High }
class Program {
static void Main() {
Level l = Enum.Parse<Level>("Medium");
Console.WriteLine(l);
}
}TryParse ile Güvenli Ayrıştırma
Enum.TryParse, hata vermek yerine başarıyı belirten bir doğru/yanlış değeri döndürür; bu, kullanıcı girdisi için daha güvenlidir.
using System;
enum Level { Low, Medium, High }
class Program {
static void Main() {
if (Enum.TryParse<Level>("Low", out var result))
Console.WriteLine("Parsed: " + result);
}
}Hatalı Girdiyi İşleme
Ayrıştırma başarısız olduğunda TryParse false döndürür; böylece uygun bir şekilde tepki verebilirsiniz.
using System;
enum Level { Low, Medium, High }
class Program {
static void Main() {
bool ok = Enum.TryParse<Level>("Unknown", out var result);
Console.WriteLine(ok ? result.ToString() : "Invalid input");
}
}Büyük/Küçük Harfe Duyarsız Ayrıştırma
Kullanıcı tarafından sağlanan metni ayrıştırırken büyük/küçük harf ayrımını yok saymak için doğru değerini iletin.
using System;
enum Level { Low, Medium, High }
class Program {
static void Main() {
Level l = Enum.Parse<Level>("high", true);
Console.WriteLine(l);
}
}Adlar İçin TryParse, IsDefined Karşısında Daha İyidir
Adları ayrıştırırken TryParse, geçerlilik denetimini ve dönüştürmeyi tek çağrıda gerçekleştirir.
using System;
enum Level { Low, Medium, High }
class Program {
static void Main() {
string input = "Medium";
if (Enum.TryParse<Level>(input, out var lvl) && Enum.IsDefined(typeof(Level), lvl))
Console.WriteLine("Valid: " + lvl);
}
}Gidiş-Dönüş Dönüşümleri
Değerler geçerli olduğu sürece numaralandırmayı tamsayıya ve geri dönüştürebilir ya da dizeye ve geri dönüştürebilirsiniz.
using System;
enum Level { Low, Medium, High }
class Program {
static void Main() {
Level start = Level.High;
int num = (int)start;
Level back = (Level)num;
Console.WriteLine(start == back);
}
}Hızlı Kontrol
Numaralandırma dönüştürmeleri ve ayrıştırma konusundaki bilginizi sınayın.
Özet
(int) ve (EnumType) kullanarak numaralandırma ile temel tamsayı türü arasında dönüşüm yapın; doğrulama için Enum.IsDefined kullanın. ToString üye adını verir.
Adları Enum.Parse<T> (hata verir) veya daha güvenli olan Enum.TryParse<T> (doğru/yanlış değeri döndürür) ile yeniden ayrıştırın; isterseniz büyük/küçük harf ayrımını yok sayabilirsiniz.
Sıkça Sorulan Sorular
“Enum Dönüşümleri ve Ayrıştırma” dersi ücretsiz mi?
Evet — “Enum Dönüşümleri ve Ayrıştırma” 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.
“Enum Dönüşümleri ve Ayrıştırma” dersinde ne öğreneceğim?
Enum'lar, tam sayılar ve dizeler arasında dönüşüm yapı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 3. dersidir.
“Enum Dönüşümleri ve Ayrıştırma” 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
- Enum Tanımlama ve Kullanma
- Flags Enum'ları ve Bitsel Birleştirmeler
- Enum Dönüşümleri ve Ayrıştırma
- Enum Değerleri Üzerinde Yineleme