C# - Suchfunktion fürs Arraylist

Alexander12

Erfahrenes Mitglied
Hi.

Ich habe mal eine Frage.

Kann Ich eigentlich für ArrayLists eine Suchfunktion einbaun?
Also dass Ich ne Textbox habe, gebe dort was ein, z.B. nen Teilstring und dann sucht er im Arraylist nach dem Objekt, macht die entsprechenden Objekte .ToString() und fügt diese z.B. in ne ListBox ein.

Wenn ja, wie?
Hab schon die ArrayList-Klasse bei System.Collections durchgeschaut, nichts gefunden.


MfG Alexander12
 

Nico Graichen

Erfahrenes Mitglied
Dann hast du aber sehr schlecht gesucht (oder gar nicht).
Schau dir mal die Funktion Contains() an ;)

offtopic:
Bist du schizophren oder warum hast du mehrere Biographien?
 

Nico Graichen

Erfahrenes Mitglied
Alexander12 hat gesagt.:
Was meinstn damit?
schau mal in dein Profil, vielleicht weißt du dann, was ich meine ;)
Alexander12 hat gesagt.:
Ja, die Contains Methode habe Ich ja auch gefunden, aber die gibt nur true oder False zurück.

Ich will ja den/die Index(e) haben.
Wenn du weißt, ob das gesuchte Objekt enthalten ist, kannst du ja dann die Liste durchlaufen, bis du an der ansprechende Stelle bist.
Aber so etwas wie Find(char) bei Strings gibt es nicht für ArrayLists. Es sei denn du schreibst dir ne eigene Klasse, in der es diese Funktion gibt.

Aber:
Du kannst ja auch mal schreiben, was du vor hast, vielleicht gibt es ja noch ne andere Möglichkeit
 

Alexander12

Erfahrenes Mitglied
Hi.

schau mal in dein Profil, vielleicht weißt du dann, was ich meine

Ok, verrats mir halt, Ich weiß nicht was du meinst.

Aber zum Thema:

Ich lese in die ArrayList strings ein, die sehen z.B. so aus:

Alexander12,Coderz@gmx.net,Modding -> array[0]
HerrIrgendwas,Coderz@gmx.net,proggen -> array[1]

Also Name,Email,Interessen.

So, wenn Ich jetzt ne textBox habe, wo Ich z.B. proggen eingebe, dann auf nen Button drück, dann soll er alle Array-Objekte durchsuchen nach dem String "proggen".

Dann müsste er in diesem Fall da array-Objekt [1] in eine listBox z.B. einlesen.

Also Ich geb nen Teilstring als Suchbegriff ein und er bringt mir das ganze Objekt.


MfG Alexander12
 

Nico Graichen

Erfahrenes Mitglied
Alexander12 hat gesagt.:
Ok, verrats mir halt, Ich weiß nicht was du meinst.

In deinem Profil steht, dass du viele Biographien hast. Folge du scheinst schizophren zu sein.

zum Thema:
Diese ganzen Informationen, würde ich schon mal nciht in einem String speichern. Es wäre besser, wenn du dafür eine eigene Klasse anlegen würdest, in der du die einzelnen Informationen in Properties speicherst.
Wie es scheint sind "Modden" und "proggen" Kategorien. Hier würde sich demnach ein Enum mit den Einzelnen Kategorien anbieten (Beugt Tippfehler vor, wenn man eine feste Auswahl hat ;) ).
Wenn jemand eine Kategorie gewählt hat, läufst du durch deine List und lässt dir nur die Objekte geben, bei denen die entsprechende Kategorie eingetragen ist.
Hat den Vorteil du kannst jederzeit auf die einzelnen Infos zugreifen ohne jedesmal den String zu durchsuchen (was vorallem bei vielen Infos sehr lange dauert).
So würde ich das machen.

PS:
Was mir noch aufgefallen ist:
Du hast als Name für das ArrayList-Objekt array gewählt, Verwechsle ArrayList nicht mit Array. Eine ArrayList ist nur eine modifierzierte Liste, die ganz anders arbeitet als ein Array. Die ArrayList hat das Wort Array nur im Namen, weil man per Index auf die einzelnen Items zugreifen kann. Das ist aber auch schon die einzeige Gemeinsamkeit mit Arrays.
(nur mal so als Info am Rande :D )
 

zioProduct

Erfahrenes Mitglied
Biographie: Da gibts viele... Zu viele um Sie aufzuzählen...

Das meint niggo :-(

Erkundige dich mal nach der Erklärung für Biographie, ich denke dann merkst du wiso das ein wenig zum Lachen ist.
:) :) :) :)

Zum Thema, falls du nicht suchen willst, machs doch herkömmlich:

Splitten, nach letztem Splitstring suchen, falls dieser = Suchkriterium ausgabe des ganzen Arrays :-(

Aber ich würds auch über Contains laufen lassen.

Naja
so long
ziop
 

Alexander12

Erfahrenes Mitglied
Hi.

PS:
Was mir noch aufgefallen ist:
Du hast als Name für das ArrayList-Objekt array gewählt, Verwechsle ArrayList nicht mit Array. Eine ArrayList ist nur eine modifierzierte Liste, die ganz anders arbeitet als ein Array. Die ArrayList hat das Wort Array nur im Namen, weil man per Index auf die einzelnen Items zugreifen kann. Das ist aber auch schon die einzeige Gemeinsamkeit mit Arrays.
(nur mal so als Info am Rande )

Ich habe sie nur array genannt, weil es ein Beispiel ist, zum Verständnis.

Ach, und das mit der Biographie:

Da steht bei Profil ändern:
Biographie
Ein PAAR INFOS zu deiner Person -> Da gibts viele, zu viele ... usw.

Habs aber trotzdem geändert.

Zufrieden?


MfG Alexander12