Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi StringList oder Array oder was anderes ? (https://www.delphipraxis.net/105350-stringlist-oder-array-oder-anderes.html)

HolgerCW 20. Dez 2007 10:23


StringList oder Array oder was anderes ?
 
Hallo zusammen,

ich möchte Datums in ein Array oder StringList oder was anderes laden, um dann danach die doppelten Datums zu eliminieren. Mache ich das am besten mit einem Array oder einer StringList oder was anderem ?

Gruss

Holger

Kroko1999 20. Dez 2007 10:55

Re: StringList oder Array oder was anderes ?
 
hängt von der Anzahl ab
wenig und langsam
TStringList und TStringList.Duplicates
mittel und viel
Array -> sortieren und gleich kappen

alzaimar 20. Dez 2007 11:09

Re: StringList oder Array oder was anderes ?
 
Ich verstehe nicht, wieso hier immer behauptet wird, eine TStringlist sei so langsam. Es ist nichts anderes als ein dynamisches Pointer-Array. Die automatisch stattfindende Vergrößerung ist ausreichend performant. Ich sehe normalerweise keinerlei Vorteil eines Arrays ggü einer Stringlist.

In Zeiten der objektorientierten Programmierung sollte man tunlichst die Finger von Arrays lassen, ausgenommen, man weiss genau, wie viele Elemente das Array enthalten wird. Die ganzen Vorteile der OOP (Austauschbarkeit, Persistenz etc.) geht doch flöten, wenn man die billigen Arrays nimmt.

Ich verwende eine TStringlist wo immer es geht. Falls ich denn meine, eine TStringlist ist mir zu langsam, würde ich sie ggf. durch eine geeignetere Klasse ersetzen. Allerdings ist es so, das so eine Liste i.A. nur dann 'lahm' wird, wenn sehr viele Daten zu speichern sind. Und dann nimmt man z.B. eine Datenbank, oder andere Strukturen, wie z.B. eine THashedStringlist oder eine Hashmap o.ä.

HolgerCW 20. Dez 2007 11:15

Re: StringList oder Array oder was anderes ?
 
Alles klar,

sind nicht viele Daten,

habe jetz mit StringList die Liste sortiert dann duplicate ignorieren und dann klappt es.

Gruss

Holger

Kroko1999 20. Dez 2007 11:34

Re: StringList oder Array oder was anderes ?
 
@alzaimar:
Zitat:

Zitat von alzaimar
Ich verstehe nicht, wieso hier immer behauptet wird, eine TStringlist sei so langsam. ...

Ich habe nicht behauptet eine Stringlist sei langsam, sondern in diesem Falle würde ja die Konvertierung TDateTime in String dazukommen, was natürlich mehr Zeit braucht als die Speicherung in einem Array of TDateTime


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:27 Uhr.

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