Witam, mam problem z listą. Poniżej kod:
ing System;
using System.Linq;
using System.Collections;
using System.Collections.Generic;
namespace Liczby;
internal class Program
{
public class Samochod
{
private string marka { get; set; }
private string model { get; set; }
private int rokProdukcji { get; set; }
private bool czyDostepny { get; set; }
public Samochod(string ma, string mo, int rp, bool czyDost)
{
marka = ma;
model = mo;
rokProdukcji = rp;
czyDostepny = czyDost;
DodajSamochod();
}
List<Samochod> samochody = new List<Samochod>();
public void DodajSamochod()
{
samochody.Add(this);
WyswietlInformacje();
}
public void ZmienDostepnosc(string szukanaMarka)
{
foreach (Samochod s in samochody)
{
if (s.marka == szukanaMarka)
{
s.czyDostepny = true;
}
}
WyswietlInformacje();
}
public void WyswietlInformacje()
{
foreach (Samochod s in samochody)
{
Console.WriteLine($"{s.marka}\t\t\t{s.model}\t\t{s.rokProdukcji}\t\t\t{s.czyDostepny}");
}
}
}
public static void Main()
{
Samochod sam1 = new Samochod("Toyota", "Yaris", 2000, false);
Samochod sam1 = new Samochod("Mercedes", "CLK", 2001, true);
Samochod sam4 = new Samochod("Audi", "R80", 1999, false);
Samochod sam5 = new Samochod("Lamborgini", "Diablo", 2020, true);
sam1.ZmienDostepnosc("Toyota");
sam3.ZmienDostepnosc("Toyota");
sam4.ZmienDostepnosc("Toyota");
sam5.ZmienDostepnosc("Toyota");
}
}
Pytanie, jak iterować listę aby nie trzeba było za każdym razem wpisywać odwołania do obiektu (sam1, sam2...). Chciałbym aby metoda ZmienDostępnosc podziałała na całej liście.
Pozdrawiam i dziękuję za podpowiedzi.