Erstellen Sie eine VB.NET Array mit zwei Spalten mit Werten?
Ich weiß, wie man ein array und eine Schleife durch es normalerweise - aber was ist, wenn ich eine multi-Spalte-array. z.B. in der Regel mache ich das vielleicht so etwas wie:
For Each row in NameofArray
Dim name as String = row
Response.Write("Hello " & name & "!")
Next
Aber was ist, wenn ich etwas machen möchte, wie:
For Each row in NameofArray
Dim name as String = row.name
Dim age as Integer = row.age
Response.Write("Hello " & name & "! You are " & age & " years old!"
Next
Falls dies nicht möglich ist, mit einem array, gibt es eine andere Möglichkeit, kann ich dies erreichen?
Dein zweites Beispiel sieht durchaus machbar. Welche Art von Objekt es genau ist
Gut, das ist das, was ich brauche, um herauszufinden. Ich weiß, wie man ein array mit einer Spalte - aber kann Sie zwei Spalten? z.B. kann ich tun, Dim my_array array ("hello", "goodbye", "adios") leicht, aber wie würde ich es mit zwei Spalten, z.B. Dim my_array array ("Hallo", "1", "Wiedersehen", "4", "adios" "0")?
NameofArray
? Eine Art stark typisiertes array?Gut, das ist das, was ich brauche, um herauszufinden. Ich weiß, wie man ein array mit einer Spalte - aber kann Sie zwei Spalten? z.B. kann ich tun, Dim my_array array ("hello", "goodbye", "adios") leicht, aber wie würde ich es mit zwei Spalten, z.B. Dim my_array array ("Hallo", "1", "Wiedersehen", "4", "adios" "0")?
InformationsquelleAutor Dave Mackey | 2011-04-11
Du musst angemeldet sein, um einen Kommentar abzugeben.
Erstellen Sie Ihren benutzerdefinierten Datentyp:
Dieser Art können Sie als verwenden, in ein array wie dieses:
Beachten Sie, wenn die Schleife durch das array per foreach-Schleife, die Elemente zurückgegeben, die für jede iteration nicht verändert. Wenn dies eine Voraussetzung für Sie ist, sollten Sie mithilfe von 'Klasse' statt 'struct', in der über die DataType-Deklaration. Diese kommen mit einigen anderen Auswirkungen allerdings. Zum Beispiel, die Instanzen einer Klasse Datentyp wird explizit angelegt werden müssen, die über die "neue" Schlüsselwort.
Sieht aus wie eine VB Frage an mich
Ich sehe, so ist zu Lesen-nur mit der Struktur, Lesen und schreiben gehen mit der Erstellung einer neuen Klasse?
Die Struktur ist ein Werttyp-Klasse ist ein Referenztyp. Wenn Sie angeben möchten, mit extra Zeug, dass Klassen tun können, gehen Sie mit der a-Klasse.
Sie kann sowohl mit structs und Klassen. Es ist nur die foreach-Schleife, die ermöglicht den Zugriff auf nur eine Kopie des echten struct-Elemente - aufgrund der Natur der Strukturen. Wenn Sie darauf angewiesen, foreach-Schleifen, eine Klasse würde sich besser eignen. Ansonsten können Sie mit einem struct-array. Aber die Elemente werden würde, beschreibbar durch direkte Indizierung nur, wie in meinem Beispiel oben.
InformationsquelleAutor user492238
Nach der Lektüre Ihr Kommentar, ich denke, dass meine andere Antwort ist wahrscheinlich das, was Sie suchen.
Welche Art ist die Zeile und was für ein Typ ist NameOfArray?
Wenn Sie möchten, um die Zeile in einem coumpound-Typ mit mehreren Mitgliedern, dann gibt es mehrere Optionen.
zum Beispiel. Wenn Sie lieber einen Referenz-Typ ersetzen
Class
fürStructure
.Oder mit anonymen Typen,
Dann können Sie Generika verwendet werden, um eine Liste von Zeilen, die Sie Durchlaufen können mit
ForEach
.oder ob es ein Ergebnis einer LINQ-Abfrage somthing, unterstützt
Ich bin mir nicht sicher, ich uderstand kann Ihre Frage und hoffe, dies ist die Art von Sache, die Sie suchen.
Wie Sie sehen können von meinem Kollegen Antwort, die Unterstützung für anonyme Typen überlegen ist in C# aber, da Sie die Frage gestellt hat VB.Net ich beschränke mich auf diesen Kontext.
InformationsquelleAutor Jodrell
Haben Sie versucht Dictionary-Klasse. Sie können eine Schleife über das Dictionary mit KeyValue-pair-Mädchen Klasse.
Ich sah in der Dictionary-Klasse ein bisschen mehr und glaube nicht, dass dies ist, was ich Suche, in dieser besonderen Klasse. Zum Beispiel, ich möchte mehrere Paare von name/Alter, nicht eindeutigen Schlüsseln.
Es wird eine großartige option, wenn Sie nur zwei Werte. Und es unterstützt verschiedene suchen und hinzufügen von Methoden.
Dann Wörterbuch nicht für Sie arbeiten 🙁
InformationsquelleAutor Anuraj
Müssen Sie (kann) ein index in das array mithilfe der zwei Dimensionen, dh...
Obwohl besser wäre das speichern dieser Art von Informationen, die in einer Klasse oder einem benutzerdefinierten Typ in irgendeiner Form.
InformationsquelleAutor El Ronnoco
Nach der Lektüre Ihr Kommentar, ich glaube, ich verstehe die Frage.
Können Sie tun
Wenn Sie möchten, erstellen Sie eine IEnumberable anonyme Art der Name-Alter-Tupeln ;-p
InformationsquelleAutor Jodrell