Atlama İfadeleri (goto)
Coddy'nin C# Journey'sinin Mantık & Akış bölümünün bir parçası. Ders 20 / 66.
C# dilindeki goto ifadesi, denetimi doğrudan aynı yöntem içindeki etiketli bir ifadeye aktarmanın bir yolunu sağlar.
Kodunuzda bir etiket oluşturun:
start:Bu etikete atlamak için goto ifadesini kullanın:
goto start;goto kullanarak bir döngü oluşturan basit bir örnek:
int i = 0;
start:
if (i < 5)
{
Console.WriteLine(i);
i++;
goto start;
}Yukarıdaki kodu çalıştırdıktan sonra çıktı şu şekilde olacaktır:
0
1
2
3
4C# dilinde goto mevcut olsa da genellikle bunun yerine yapılandırılmış kontrol akışı ifadelerinin (if, for, while vb.) kullanılması önerilir; çünkü bunlar kodu daha okunabilir ve sürdürülebilir hâle getirir.
Görev
KolayProcessCommands adlı ve bir bağımsız değişken alan bir yöntem oluşturun:
- İşlenecek bir komut içeren bir dize (
command).
Yöntem, goto ifadelerini kullanarak basit bir komut işlemcisi uygulamalıdır:
- Komut "start" ise, "Starting process" yazdırın ve ardından "end" etiketine gidin
- Komut "stop" ise, "Stopping process" yazdırın ve ardından "end" etiketine gidin
- Komut "pause" ise, "Pausing process" yazdırın ve ardından "end" etiketine gidin
- Komut başka herhangi bir şey ise, "Unknown command" yazdırın ve ardından "end" etiketine gidin
- "end" etiketinde “Command processed” yazdırın
Kendin dene
using System;
public class Program
{
public static void ProcessCommands(string command)
{
// Kodunuzu buraya yazın
}
public static void Main(string[] args)
{
string command = Console.ReadLine();
ProcessCommands(command);
}
}Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Mantık & Akış bölümündeki tüm dersler
1Çok Boyutlu Diziler
2B Dizilere Giriş2B Tanımlama ve Başlatma2B Dizi Öğelerine Erişim2B Dizilerle İç İçe DöngülerDüzensiz DizilerYaygın Matris İşlemleriTekrar - Çok Boyutlu4Akış Denetimi Teknikleri
Erken DönüşlerKoruma KoşullarıAtlama İfadeleri (goto)Break ve Continueİç İçe Koşulları Düzleştirme7İleri Düzey Mantıksal Operatörler
Kısa Devre DeğerlendirmesiKoşullu Mantıksal OperatörlerOperatör ÖnceliğiÖzet - İleri Düzey Operatörler2İleri Düzey Karar Verme
Birden Çok KoşulKarmaşık Boolean MantığıIf ve Switch Karşılaştırmasıİç İçe Switch İfadeleriÖzet - İleri Düzey Kararlar5İstisna Yönetimi
Try-Catch Temelleriİstisna TürleriBirden Çok Catch BloğuDosyalarla ÇalışmaFinally BloğuUsing ve Try-Finally KarşılaştırmasıÖzel İstisnalarTekrar - Hata Yönetimi3Döngü İyileştirmeleri
Döngü PerformansıKarmaşık Yapılar Üzerinde İterasyonHer Döngü TürüDöngüleri Yeniden DüzenlemeÖzet - Optimize Edilmiş Döngüler6Null Yönetimi
Null Referanslarının TemelleriNullable Değer TürleriNull Kontrolü DesenleriSavunmacı ProgramlamaTekrar - Null GüvenliğiKendi başına pratik yap: Online C# derleyicisi