Lua Array
Array ist eine Sammlung von der gleichen Art von Datenelementen in einer bestimmten Reihenfolge, die eindimensionale Arrays und mehrdimensionalen Arrays sein kann.
Lua array Indexschlüsselwerte können als eine ganze Zahl verwendet werden, wobei die Größe des Arrays ist nicht festgelegt.
Eindimensionales Array
Eindimensionales Array ist ein Array von der einfachsten, logische Struktur ist eine lineare Form. Eindimensionale Anordnung kann für die Schleifenelemente in der Anordnung verwendet werden, die folgenden Beispiele:
array = {"Lua", "Tutorial"} for i= 0, 2 do print(array[i]) end
Der Ausgang wird der obige Code wird ausgeführt:
nil Lua Tutorial
Wie Sie sehen können, können wir einen Integer-Index für den Zugriff auf Array-Elemente zu verwenden, wenn Sie wissen, dass es kein Indexwert ist gleich Null zurückgegeben.
In Lua Indexwerte sind 1 Start, aber auch 0 angeben.
Außer Darüber hinaus können wir auch ein negatives Array Indexwert sein:
array = {} for i= -2, 2 do array[i] = i *2 end for i = -2,2 do print(array[i]) end
Der Ausgang wird der obige Code wird ausgeführt:
-4 -2 0 2 4
Mehrdimensionale Arrays
Multidimensionalen Array, das ist ein Array, das ein Array von Indexschlüssel oder eine eindimensionale Anordnung entsprechend der Anordnung enthält.
Hier ist eine Anordnung von drei Reihen und drei Spalten in einem mehrdimensionalen Array:
-- 初始化数组 array = {} for i=1,3 do array[i] = {} for j=1,3 do array[i][j] = i*j end end -- 访问数组 for i=1,3 do for j=1,3 do print(array[i][j]) end end
Der Ausgang wird der obige Code wird ausgeführt:
1 2 3 2 4 6 3 6 9
Drei Reihen von drei Arrays Mehrdimensionale Arrays unterschiedliche Indexschlüssel:
-- 初始化数组 array = {} maxRows = 3 maxColumns = 3 for row=1,maxRows do for col=1,maxColumns do array[row*maxColumns +col] = row*col end end -- 访问数组 for row=1,maxRows do for col=1,maxColumns do print(array[row*maxColumns +col]) end end
Der Ausgang wird der obige Code wird ausgeführt:
1 2 3 2 4 6 3 6 9
Wie Sie sehen können, die obigen Beispiele wird der Array-Index auf den angegebenen Wert gesetzt, so kann Nullwert zu vermeiden, helfen um Speicherplatz zu sparen.