Usuwanie obiektów własnego typu z List<> lub ArrayList

0

Mam problem. Tzn. pewnie jest on trywialny, ale nie wiem jak go podejść. Mianowicie. Wypełniam jakąś strukturę tablicopodobną obiektami mojej klasy. Niech to będzie powiedzmy lista pracowników wypełniona pracownikami.

private List<Pracownik> pracownicy;

Jak dodałem Zenka Kowalskiego, jak mogę go teraz znaleźć i usunąć? Jak najlepiej przechowywać takie obiekty, żebym miał możliwość łatwego usunięcia ich? Czy jedynym wyjściem będzie foreach po całej tablicy i usuniecie indeksu, który będzie akurat zgodny z warunkiem? :|

1

.Remove(T), .RemoveAt(int).

RemoveAt usuwa z indeksu, Remove usuwa obiekt którego referencję mu przekazałeś.

0

zeby wyszukac po jakiejs wlasciwosci obiekt musisz przeleciec forem po tablicy
najlepszy jest for i List<T>.ForEach(...), bo foreach jest malo wydajny przy duzych tablicach (nie chodzi tylko o rozmiar samej listy, ale tez obiektu) - poszukaj w necie czemu jesli cie to interesuje
mozesz tez skorzystac z dobrodzijstw Linq i rozszerzen IEnumerable
musisz zadleklarowac using System.Linq; i masz dostepne na List<T> kilka ciekawych metod do wyszukiwania np. Where, Single, singleOrDefault, First, FirstOrDefault, ...

1 użytkowników online, w tym zalogowanych: 0, gości: 1