Görev listeleme
ListTasks ile görevleri formatlı yazdırmayı öğrenirsin.
Görev listeleme
Listeye görev ekledikten sonra onları görmek isteriz. ListTasks metodu foreach ile listedeki tüm görevleri gezer ve her birinin Title'ını ekrana yazdırır.
Metot imzası: static void ListTasks(List<Task> tasks). Gövde foreach (Task t in tasks) { Console.WriteLine(t.Title); } döngüsünden oluşur. Bu yapı listeyi baştan sona gezer.
foreach ile gezme
foreach döngüsü bir koleksiyonun tüm elemanlarını sırayla gezer. foreach (Task t in tasks) her görevi tek tek t değişkenine atar ve döngü gövdesini çalıştırır.
Bu yapı, dizinleme hatası yapma riskini ortadan kaldırır; for döngüsündeki gibi i değişkeni yönetmek gerekmez. Liste boyunca tek yönle ilerlemek için idealdir.
Uygulama ListTasks metodu
ListTasks metodunun gövdesini yaz: foreach (Task t in tasks) { Console.WriteLine(t.Title); }. Main içinde iki görev ekle (AddTask(tasks, "Ekmek al") ve AddTask(tasks, "Süt al")) sonra ListTasks(tasks) çağır.
Örnek çözümü göster
ListTasks gövdesine foreach (Task t in tasks) { Console.WriteLine(t.Title); } ekle, Main içine ListTasks(tasks); yaz.
Örnek çözüm:
using System;
using System.Collections.Generic;
class Task
{
public string Title;
public bool IsDone;
}
class Program
{
static void AddTask(List<Task> tasks, string title)
{
tasks.Add(new Task { Title = title, IsDone = false });
}
static void ListTasks(List<Task> tasks)
{
// foreach ile her görevin başlığını yazdır
foreach (Task t in tasks)
{
Console.WriteLine(t.Title);
}
}
static void Main()
{
List<Task> tasks = new List<Task>();
AddTask(tasks, "Ekmek al");
AddTask(tasks, "Süt al");
// ListTasks çağrısı ekle
ListTasks(tasks);
}
}
Kendini test et
-
tasks[0].Title çıktısı nedir?
List<Task> tasks = new List<Task>(); tasks.Add(new Task { Title = "Ekmek al", IsDone = false }); tasks.Add(new Task { Title = "Süt al", IsDone = false }); Console.WriteLine(tasks[0].Title);- Süt al
- Ekmek al
- Boş
- 2
Cevabı göster
Ekmek al — Doğru. İlk eklenen görevin indeksi 0; Title "Ekmek al" olur.
-
foreach döngüsü
foreach (____) { Console.WriteLine(t.Title); }Cevabı göster
foreach (Task t in tasks) { Console.WriteLine(t.Title); } -
İfadeyi anlamına eşle
- foreach
- Her elemanı gez
- t.Title
- Görev başlığı
- Console.WriteLine
- Ekrana yaz
- tasks.Count
- Toplam görev