Moin, Moin.
Ein Beispiel? Für BREAK, hier ist es...
Delphi-Quellcode:
function GetInternetAddr(MenuItem:String):String;
var i : Integer;
begin
Result:='';
for i:=0 to pred(MSDNList.Count) do
if pos(MenuItem,MSDNList[i])>0 then begin
Result:=MSDNList[i];
Break;
end;
end;
MSDNList ist eine StringListe die Strings im Format MenuItem+'|'+WebAddress enthält, die Liste ist (und bleibt) klein (<100 Einträge), eine Element wird daraus gesucht. Natürlich kann man in einer sortierten Liste anders suchen, na klar!. Der Geschwindigkeitsunterschied bei einer so geringen Anzahl von Elementen ist m.E. akademisch! Aber gehen wir mal davon aus, dass wir mit einer unsortierten Liste arbeiten müssen! Insgesamt halte ich obige Funktion für effizient, übersichtlich und angemessen - oder ?????