Luaにおけるtableライブラリ関数insert,remove,sort

5337 ワード

Luaにおけるtableライブラリ関数insert,remove,sort
一、insert挿入

do
    --> table.insert      

    tab = {"a", "c", "d", "b"}

    --   tab          "e"
    table.insert(tab, "e")

    --   tab          "f"
    print(table.insert(tab, "f"))
    --     :    ,  table.insert       

    --   tab   2         "g"
    table.insert(tab, 2, "g")

    for i,v in ipairs(tab) do
        print(i,v)
    end

    --     :
    -- 1       a
    -- 2       g
    -- 3       c
    -- 4       d
    -- 5       b
    -- 6       e
    -- 7       f
end

二、remove除去
do
    --            
    --table.remove(t)
    --       index    
    -- table.remove(t, index)

    t = {"a", "b", "c", "d"}

    --            
    table.remove(t)

    --      t     1    
    table.remove(t, 1)

    for k,v in pairs(t) do
        print(k,v)
    end

    --     :
    --  1     b
    --  2     c
end

三、sortソート
do

    tab = {"d", "b", "a", "c"}

    --           tab     
    table.sort( tab )

    for i,v in ipairs(tab) do
        print(i,v)
    end

    --     :
    -- 1     a
    -- 2     b
    -- 3     c
    -- 4     d


    tab2 = {"d", "b", "a", "c"}

    --            
    function sortfunction( a, b )
        return a > b
    end

    --   tab2    sortfunction       
    -- tab2          
    table.sort( tab2, sortfunction )

    for i,v in ipairs(tab2) do
        print(i,v)
    end

    --    :
    -- 1     d
    -- 2     c
    -- 3     b
    -- 4     a

end