AnDi_P Geschrieben 14. Oktober 2009 Geschrieben 14. Oktober 2009 Hallo, ich bin gerade angefangen, mich mit einem Buch in C# (Visual Studio 2008) einzuarbeiten. Hierbei habe ich im Moment leider ein kleines Verständnisproblem, welches ich ungern einfach überspringen würde. Es geht um ein dreidimensionales Array - hier der Ausschnitt aus dem Buch: Diese Systematik setzt sich mit jeder weiteren Dimension fort. Beispielhaft sei das noch an einem dreidimensionalen Array gezeigt: {{{Anzahl der Elemente der dritten Dimension}, { }, ...}, { }, ...} Das folgende Codebeispiel zeigt anhand eines dreidimensionalen Arrays, dass die Initialisierung mit zunehmender Dimensionstiefe schon verhältnismäßig komplex und dazu auch noch schlecht lesbar ist: int[,,] myArr = { { {1,2,3,4},{3,4,5,6},{6,7,8,9}}, { {3,4,6,1},{6,19,3,4},{4,1,8,7}} }; Das Array myArr entspricht einem Array myArr[2,3,4]. Es weist in der dritten Dimension vier Elemente auf, in der zweiten drei und in der ersten zwei. Beim Zugriff auf ein mehrdimensionales Array muss man jede Dimension des entsprechenden Elements angeben. Beispielsweise schreibt die Anweisung Console.WriteLine(myArr[1,1,1]); die Zahl 19 in das Konsolenfenster. Ich kann mir bei diesem Beispiel nicht richtig vorstellen, wie so ein Array mit 3 Dimensionen aufgebaut ist. Bei 2 Dimensionen stelle ich mir das ganze als Tabelle mit Reihen und Spalten vor. Wie kann man sich das anhand des Beispiel's dreidimensional vorstellen...? Quasi als eine Art Papierstapel? Die 2 Dimensionen sind als Tabelle auf dem obersten Blatt, und die 3. Dimension geht einfach nur in die Tiefe? Vermutlich sehe ich einfach den Wald vor lauter Bäumen nicht - dennoch vielen Dank im Vorraus! Gruß AnDi_P Zitieren
JasonDelife Geschrieben 14. Oktober 2009 Geschrieben 14. Oktober 2009 (bearbeitet) Man könnte es sich durchaus wie eine 3D-Tabelle vorstellen, in der jede Zelle in die Tiefe geht. Dann hätte man quasi einen Würfel, der in viele kleine Würfel zu je einem Wert unterteilt ist. Aber 3- und Mehr-Dimensionale Arrays braucht man eher selten, würde ich sagen. Grüße, JasonDelife. Bearbeitet 14. Oktober 2009 von JasonDelife Typo Zitieren
TDM Geschrieben 15. Oktober 2009 Geschrieben 15. Oktober 2009 Bei 2 Dimensionen stelle ich mir das ganze als Tabelle mit Reihen und Spalten vor. Wie kann man sich das anhand des Beispiel's dreidimensional vorstellen...? Quasi als eine Art Papierstapel? Die 2 Dimensionen sind als Tabelle auf dem obersten Blatt, und die 3. Dimension geht einfach nur in die Tiefe? Papierstapel ist ein anschauliches Beispiel: Du hast p Blätter mit jeweils einer Tabelle, diese hat c Spalten und r Zeilen. Damit du nun einen Wert bekommst greifst du: Array[p][r][c] ab. Wenn dann mehrere Tabellen t auf einer Seite sind, gibts sogar ein vierdimensionales/n Array: Array[p][t][r][c] Eh man aber sowas macht, sollte man sich überlegen, ob Objekte da nicht besser wären. Zitieren
AnDi_P Geschrieben 16. Oktober 2009 Autor Geschrieben 16. Oktober 2009 Hallo, vielen Dank für Eure beiden Antworten! Lag ich wohl doch nicht so ganz falsch Greetz Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.