【lua实战】数组和数组长度

大多数编程语言中,一个数组很容易计算数组长度,一般都是使用现成的函数或者通过计算得到,比如:

Python

array = [1, 2, 3, 4, 5]
length = len(array)

JavaScript

let array = [1, 2, 3, 4, 5];
let length = array.length;

Java

int[] array = {1, 2, 3, 4, 5};
int length = array.length;

C#

int[] array = {1, 2, 3, 4, 5};
int length = array.Length;

C++

int array[] = {1, 2, 3, 4, 5};
int length = sizeof(array) / sizeof(array[0]);

Ruby

array = [1, 2, 3, 4, 5]
length = array.length

Go

	array := []int{1,2,3,4,5}
	length := len(array)

lua也有长度运算符,是#

Lua

local array = {1,2,3,4,5}
local length = #array

但lua和其它语言不同之处是lua的数组索引从1开始,因此

Lua

--例1
local array1 = {}
for i=1, 5 do
    array1[i] = i
end
print(#array1)--5

--例2
local array2 = {}
for i=0, 5 do
    array2[i] = i
end
print(#array2)  --5

--例3
local array3 = {}
for i=-5, 5 do
    array3[i] = i
end
print(#array3)  --5

上面三个例子输出结果都是5,因为**#** 这个长度运算符是从1开始计数

要想计算表array3的元素个数,需要用pairs来遍历。

Lua

local len = 0
for k,v in pairs(array3) do
    len = len +  1
end

print(len) --11

要注意,这种方式求得的是表array3的长度,而不是array3包含的数组长度。

原文地址:【lua实战】数组和数组长度 -- 经云的清净小站 (skycreator.top)

相关推荐
测试笔记(自看)8 分钟前
postman上一个接口返回值作为下一个接口的入参
测试工具·lua·postman
码叔义12 分钟前
Jsonpath 使用说明
android·开发语言·javascript
行十万里人生25 分钟前
Qt 对象树详解:从原理到运用
开发语言·数据库·qt·华为od·华为·华为云·harmonyos
原来是猿31 分钟前
蓝桥备赛(四)- 数组(下)
开发语言·数据结构·c++·算法
心流时间34 分钟前
[Java基础] JVM常量池介绍(BeanUtils.copyProperties(source, target)中的属性值引用的是同一个对象吗)
java·开发语言·jvm
网络安全Ash37 分钟前
Python网络安全脚本
开发语言·python·web安全
.猫的树1 小时前
Java集合List快速实现重复判断的10种方法深度解析
java·开发语言·list·集合
刀客1231 小时前
C++ STL(三)list
开发语言·c++
朔北之忘 Clancy2 小时前
2022 年 12 月青少年软编等考 C 语言五级真题解析
c语言·开发语言·c++·学习·算法·青少年编程·题解
折枝寄北2 小时前
(21)从strerror到strtok:解码C语言字符函数的“生存指南2”
c语言·开发语言