Viele kennen die Methode GetLength nicht. Mithilfe dieser Methode kann man einfach die Länge einer Dimension eines Arrays ausfragen.
MSDN Dokumentationen:
GetLowerBound: http://msdn.microsoft.com/de-de/library/system.array.getlowerbound.aspx
GetUpperBound: http://msdn.microsoft.com/de-de/library/system.array.getupperbound.aspx
GetLength: http://msdn.microsoft.com/de-de/library/system.array.getlength.aspx
Dieses kleine Snippet geht alle Elemente eines solchen Mehrdimensionalen Arrays durch. Das einzige was man natürlich wissen muss, ist die Anzahl der Dimensionen.
//2 Dimensionen
//2-Dimensionales Array anlegen, kann eine beliebige Größe und einen beliebigen Typ haben
int[,] obj2 = new int[10, 20];
//Alle Elemente durchgehen und zuweisen
for (int x = obj2.GetLowerBound(0); x < obj2.GetLength(0); ++x)
for (int y = obj2.GetLowerBound(1); y < obj2.GetLength(1); ++y)
obj2[x, y] = x * y;
//3 Dimensionen
//3-Dimensionales Array anlegen, kann eine beliebige Größe und einen beliebigen Typ haben
int[, ,] obj3 = new int[10, 20, 30];
//Alle Elemente durchgehen und zuweisen
for (int x = obj3.GetLowerBound(0); x < obj3.GetLength(0); ++x)
for (int y = obj3.GetLowerBound(1); y < obj3.GetLength(1); ++y)
for (int z = obj3.GetLowerBound(2); z < obj3.GetLength(2); ++z)
obj3[x, y, z] = x * y * z;
1 Kommentare zum Snippet