Lua - 陣列長度



通常約定,陣列的大小是在陣列中nil之前存在的元素的數量。在許多情況下,陣列中不允許出現nil,但對於某些應用程式來說,在陣列中包含nil並不是問題。

如果我們在陣列中允許 nil 值,那麼我們必須有一些函式來顯式地設定陣列的大小。

Lua 為我們提供了一個函式來獲取數值索引陣列的大小:

  • getn - 用於獲取數值索引陣列的大小。

語法

n = table.getn (t)
  • t - 陣列

  • n - 陣列的大小

getn() 方法返回數值索引表的長度。表的長度是第一個值為 nil 的整數索引減 1。如果表中存在索引序列的間隙,則表的大小不保證是最後一個間隙。Lua 使用二分查詢來查詢間隙,並且可能不是第一個或最後一個間隙。

示例

main.lua

print(table.getn{10,2,4})
--> 3
print(table.getn{10,2,nil})
--> 2
print(table.getn{10,2,nil; n=3})
--> 3
print(table.getn{n=1000})
--> 0

輸出

3
2
3
0

示例

請參考以下示例:

main.lua

n = table.getn { "welcome", "to", "tutorialspoint", "com", name = "Mahesh" } --> 4
print(n)

-- use # to get length of the array
n = # { "welcome", "to", "tutorialspoint", "com" } --> 4
print(n)

輸出

4
4
廣告

© . All rights reserved.