florian86
Goto Top

C-sharp mehrdimensionale List

Hallo Zusammen,

kann man in c# eine mehrdimensionale Liste erzeugen? Und wie kann man darauf zugreifen?
ich hatte es wie folgt probiert...

List<(string,string) mylist = new List<(string,string)>();

mylist.Add(string1,string11);
mylist.Add(string2,string21)

das scheint aber leider nicht zu funktionieren.

MfG

Florian86

Content-ID: 666267

Url: https://administrator.de/forum/c-sharp-mehrdimensionale-list-666267.html

Ausgedruckt am: 23.12.2024 um 15:12 Uhr

emeriks
Lösung emeriks 30.04.2021 aktualisiert um 11:21:57 Uhr
Goto Top
Hi,
man müsst jetzt wissen, was Du wirklich erreichen willst. Dein Daten-Beispiel ist da nicht so eindeutig.

Man könnte:
  • eine Liste von Listen erzeugen
  • eine Liste von 2-dimensionalen Arrays erzeugen
  • eine Liste von eigenen Objekten mit 2 Properties erzeugen
  • ein 2-dimensionales Array erzeugen
  • oder ein Dictionary
...

Soll das eine 1:n Darstellung werden?
Oder einfach eine Liste mit aus 2 Feldern bestehenden Datensätzen?

E.
Florian86
Florian86 30.04.2021 um 11:32:29 Uhr
Goto Top
Hi,

ich möchte einfach eine Liste wie ein Array mit 2 Datenfeldern erzeugen

Wert1, String1
Wert2, String2

und möchte auf alle Felder wie beim Array zugreifen können.
148121
Lösung 148121 30.04.2021 aktualisiert um 11:51:07 Uhr
Goto Top
z.B. eins von unendlich vielen Möglichkeiten face-smile
List<string> mylist = new List<string>();
mylist.Add(new string[2]{"Test1","Test11"});  
mylist.Add(new string[2] {"Test2", "Test22"});  
MessageBox.Show(mylist[1]);
oder auch
Dictionary<string, string> dic = new Dictionary<string, string>();
dic.Add("Test1", "Test11");  
dic.Add("Test2", "Test22");  
MessageBox.Show(dic["Test2"]);  
Wenn man via Key-Angabe den Value haben will und die Keys eindeutig sind.

Gruß w.
emeriks
Lösung emeriks 30.04.2021 aktualisiert um 11:48:43 Uhr
Goto Top
Na dann entweder
- ein List mit Listen als Elemente
- ein Dictionary mit z.B. [string]Key; [string]Value
Florian86
Florian86 30.04.2021 um 11:52:23 Uhr
Goto Top
Ok Also ein Array in einer List verpackt.

Habe es jetzt wie dein Vorredner als extra Objekt gemacht...

vorher eine Klasse wagen mit den geeigneten Properties erstellt

            var wagen = new List<wagen>();


            wagen.Add(new wagen { Nummer = "Testwagen", Kuehl = "Testkuehl" });  
            wagen.Add(new wagen { Nummer = "Testwagen1", Kuehl = "Testkuehl1" });  
            wagen.Add(new wagen { Nummer = "Testwagen2", Kuehl = "Testkuehl2" });  
Florian86
Florian86 30.04.2021, aktualisiert am 21.04.2022 um 16:38:22 Uhr
Goto Top
Hallo,

eine Sache noch. Wie bekomme ich die komplette Liste in meine Messagebox?

screenshot_9

Ich bekomme immer nur das Object ausgegeben.
emeriks
Lösung emeriks 30.04.2021 aktualisiert um 13:37:40 Uhr
Goto Top
Du must für Deine Klasse "wagen" das ToString() überschreiben.

Gewusst wie: Überschreiben der ToString-Methode

Edit:
Oder
   text += s.Nummer + " " + s.Kuehl + "\n";