Istnieje lista jak poniżej:
List<NazwaInterfejsuKlas> ObiektyKlas;
Mamy daną nazwę klasy oraz nazwę pliku assembly, z której pochodzi. Jak sprawdzić, czy na liście istnieje obiekt tej klasy?
Można przejechać listę pętlą i porównywać nazwy klas, np:
function CzyJestNaLiscie(string NazwaKlasy)
{
foreach(NazwaInterfejsuKlas o in ObiektyKlas)
{
if(o.GetType().Name == NazwaKlasy) {...}
}
}
Jednak przy dużej liczbie obiektów w klasie i nazw do sprawdzenia może to być dość czasochłonne. Szukam najszybszego sposobu, żeby sprawdzić, czy obiekt klasy o danej nazwie (lub pliku) znajduje się na liście.
Czy utworzenie słownika z referencjami znacząco przyspieszy wyszukiwanie?
Dictionary<string,NazwaInterfejsuKlas> slownik;