Forum: Sonstige Fragen zu Delphi
Delphi
by Stevie,
30. Jan 2020
Arg, bitte nicht so - ein IEnumerable ist eine Sequenz - ja, die hat Count und ElementAt aber das macht sie nicht zu einer Liste, auf die mit O(1) auf einzelne Elemente zugegriffen werden kann.
Wenn du bei einem IEnumerable, was das Ergebnis eines Where Aufrufs ist, auf Count zugreifst, wird die komplette Ausgangsmenge genommen und auf jedes Element das in Where übergebene predicate angewandt....
Forum: Sonstige Fragen zu Delphi
Delphi
by Stevie,
30. Jan 2020
Falsch - nur weil eine Banane eine Frucht ist, ist nicht jede Frucht eine Banane.
Das Ergebnis von Where ist eine verzögert ausgeführte Sequenz und nicht eine auf das Filterprädikat gefilterte Liste, wo ich auch wieder Dinge hinzufügen kann.
Die Where Methode ist von IEnumerable<T>, wovon IList<T> erbt und diese somit auch bereitstellt.
Ändere den Ergebnistyp von FilterNachBlau auf...