Czy istnieje wygodny sposób na usunięcie zagnieżdżonej listy z innej listy, jeśli spełnia ona określone wymagania? Na przykład, powiedzmy, że mamy kolekcję przystanków, a my decydujemy się na wywołanie każdego zbioru przystanków trasy. Każda trasa jest na liście z. Następnie decydujemy się umieścić każdą trasę w liście.C# Usuwanie listy z listy
Teraz, gdy mamy listę tras, ktoś decyduje, że niektóre typy tras naprawdę nie powinny być uwzględnione na liście tras. Jak mogę usunąć te trasy? Oto niektóre przykładowy kod:
Przykład Klasa
public class Stops
{
public Stops(int _param1, string _param2)
{
param1 = _param1;
param2 = _param2;
}
public int param1 { get; set; }
public string param2 { get; set; }
}
Tworzenie wykazów
List<List<Stops>> lstRoutes = new List<List<Stops>>();
List<Stops> lstStops = new List<Stops>();
List<Stops> lstMoreStops = new List<Stops>();
// Create some stops
for (int i = 0; i < 5; i++)
{
lstStops.Add(new Stops(i, "some text"));
}
lstRoutes.Add(lstStops);
// Create some more stops
for (int i = 5; i < 10; i++)
{
lstMoreStops.Add(new Stops(i, "some more text"));
}
lstRoutes.Add(lstMoreStops);
Jak mogę usunąć trasę z lstRoutes który ma, powiedzmy, żadnej wartości Param1 większą niż 6?
Ha Chciałabym uniknąć dodawania ich do listy w pierwszym tempie. Niestety, lista startowa to garść permutacji i mam za zadanie pozbyć się permutacji, które nie mają sensu. Pierwszy napisany kod rzucił następujący błąd: Nie można przekonwertować wyrażenia lambda na typ, ponieważ nie jest to typ delegata. ALE drugi kawałek działał świetnie. Dziękuję Ci bardzo! –
czy wiesz, jak mogę uzyskać indeks param1? Wiem, że w tym przypadku zawsze będzie 0, ale powiedz, że każda trasa składa się z wielu liczb całkowitych, i chciałem usunąć wszystkie trasy, gdzie 6 miało miejsce przed 7. Jeśli nie, to nic wielkiego. Zrobię to albo zacznę kolejne pytanie. –
to wymyśliłem. Jeszcze raz dziękuję za pomoc. –