LinkedLists - bestimmten Eintrag auslesen
Verfasst: 14.05.2005 18:42
Angenommen ich will gezielt nur den 3. Eintrag einer LL auslesen, wie geht das?
Kenne bisher nur die ForEach-Variante...
Kenne bisher nur die ForEach-Variante...
Das deutsche PureBasic-Forum
https://www.purebasic.fr/german/
SelectElement(Liste(),2)Delle hat geschrieben:Angenommen ich will gezielt nur den 3. Eintrag einer LL auslesen, wie geht das?
Du wolltest das 3. Element haben, also mußt Du dort 2 angeben.Delle hat geschrieben:SelectElement(Liste(),3)
MessageRequester("",Str(Liste()),0)
Wenn Deine LL vom Type String ist, mußt Du nur die Liste angeben.Delle hat geschrieben:Okay! Aber warum liefert mir das nur eine Zahl zurück und keinen Inhalt?
Wenn ich z.B. "user" aus der Liste ausgegen haben will, muss ich das noch dranhängen?
Code: Alles auswählen
MessageRequester("",Liste())Doch. Deshalb sagte ich ja auch Du sollst das weglassen bei Strings.Delle hat geschrieben:An dem Str() wird es wohl auch nicht liegen...
Code: Alles auswählen
NewList Liste.s()
If AddElement(Liste()) : Liste()="Eintrag 1" : EndIf
If AddElement(Liste()) : Liste()="Eintrag 2" : EndIf
If AddElement(Liste()) : Liste()="Eintrag 3" : EndIf
If AddElement(Liste()) : Liste()="Eintrag 4" : EndIf
SelectElement(Liste(),2)
MessageRequester("",Liste())Das '.s' muß dann logischerweise in die Struktur.Delle hat geschrieben:Kleines Problem noch: Es ist keine normale LL sondern mit einer Struktur.
NewList Liste.Liste.s() bringt natürlich einen Fehler, wo muss das ".s" hin?
Code: Alles auswählen
Structure liste1
string.s
EndStructure
NewList Liste.liste1()
If AddElement(Liste()) : Liste()\string="Eintrag 1" : EndIf
If AddElement(Liste()) : Liste()\string="Eintrag 2" : EndIf
If AddElement(Liste()) : Liste()\string="Eintrag 3" : EndIf
If AddElement(Liste()) : Liste()\string="Eintrag 4" : EndIf
SelectElement(Liste(),2)
MessageRequester("",Liste()\string)