循环访问lua和c#数组的不同之处

lua中的数组索引从1开始

--x最小值为1
local function CircularAccess(x)
    local arr = ["a", "b", "c"]
    local idx = math.fmod(x, #arr)
    if 0 == idx then
      idx = #arr
    end
    print(arr[idx])
end

 

写法2

--x最小值为1
local function CircularAccess(x)
    local arr = ["a", "b", "c"]
    local Start_Idx = 1
    local idx = math.fmod(x - Start_Idx, #arr) + Start_Idx
    print(arr[idx])
end

 

c#中的数组从0开始

//x从0开始
public void CircularAccess(int x)
{
    var arr = {"a", "b", "c"};
    int idx = x % arr.Length;
    Console.WriteLine(arr[idx]);
}

 

posted @ 2025-08-30 15:30  yanghui01  阅读(6)  评论(0)    收藏  举报