Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Gibt es eine Art TDictionary mit nicht-eindeutigem Schlüssel? (https://www.delphipraxis.net/198171-gibt-es-eine-art-tdictionary-mit-nicht-eindeutigem-schluessel.html)

mkinzler 10. Okt 2018 10:37

AW: Gibt es eine Art TDictionary mit nicht-eindeutigem Schlüssel?
 
Warum nicht? Wenn sich dabei die Größe der Exe signifikant erhöhen würde, könnte ich die Bedenken u.U. verstehen.

Aber wir werden langsam OT.

taveuni 10. Okt 2018 10:53

AW: Gibt es eine Art TDictionary mit nicht-eindeutigem Schlüssel?
 
Zitat:

Zitat von Fritzew (Beitrag 1415379)

Klar :
Delphi-Quellcode:
Dictionary<string, TList<Wasauchimmer>>;

Und wie soll das funktionieren? Der String ist doch der Key und damit eindeutig?

Neutral General 10. Okt 2018 10:59

AW: Gibt es eine Art TDictionary mit nicht-eindeutigem Schlüssel?
 
Zitat:

Zitat von taveuni (Beitrag 1415406)
Zitat:

Zitat von Fritzew (Beitrag 1415379)

Klar :
Delphi-Quellcode:
Dictionary<string, TList<Wasauchimmer>>;

Und wie soll das funktionieren? Der String ist doch der Key und damit eindeutig?

Jo aber durch die Liste in der mehrere Daten drin sind haben dadurch mehrere Daten indirekt den gleichen Key.
Es läuft aufs Gleiche hinaus.

key * a + key * b = key * (a + b) :mrgreen:

Codehunter 10. Okt 2018 11:17

AW: Gibt es eine Art TDictionary mit nicht-eindeutigem Schlüssel?
 
Zitat:

Zitat von taveuni (Beitrag 1415406)
Zitat:

Zitat von Fritzew (Beitrag 1415379)

Klar :
Delphi-Quellcode:
Dictionary<string, TList<Wasauchimmer>>;

Und wie soll das funktionieren? Der String ist doch der Key und damit eindeutig?

Also in meinem Fall würde das sehr gut funktionieren, denn "Wasauchimmer" wäre ein Integer und wiederum Index auf einer Objektliste. Der Key käme dann einem Datenmengenfilter gleich und über First/Next-Methoden würde ich den Index der TList im Dictionary verschieben.

Wahrscheinlich könnte man ähnliches auch mit einer Memtable bewerkstelligen. Aber erstens gefällt mir die Effizienz der Hashtable im Dictionary sehr gut und andererseits muss ich so nicht Tonnen von Code umbauen um auf Memtable umzustellen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:49 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz