Lua表数据中移除某项时一些值的问题

在 k,v pairs(x)中Remove一个数据

    table.insert(x,"aaa")
    table.insert(x,"bbb")
    table.insert(x,"ccc")

    for i,v in pairs(x) do       
      if i == 2 then
        --x[i] = nil
        table.remove(x,2)
      end
      print(x[i])
    end

结果aaa ccc

置空一个数据

    table.insert(x,"aaa")
    table.insert(x,"bbb")
    table.insert(x,"ccc")

    for i,v in pairs(x) do       
      if i == 2 then
        x[i] = nil
      end
      print(x[i])
    end

结果 aaa nil ccc

使用for i,#x do置空一个数据

    local x = {}
    table.insert(x,"aaa")
    table.insert(x,"bbb")
    table.insert(x,"ccc")
    for i = 1 ,#x do
        if i == 2 then
            x[i] = nil
        end
        print(x[i])
    end

结果 aaa nil ccc

 使用for i,#x do移除一个数据

local x = {}
    table.insert(x,"aaa")
    table.insert(x,"bbb")
    table.insert(x,"ccc")
    for i = 1 ,#x do
        if i == 2 then
            table.remove(x,2)
        end
        print(x[i])
    end

结果 aaa ccc nil
原文地址:https://www.cnblogs.com/vsirWaiter/p/8278177.html