zoukankan      html  css  js  c++  java
  • lua中的pairs和ipairs差别

    pairs

    Returns three values: the next function, the table t, and nil, so that the construction

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

    will iterate over all key–value pairs of table t.

    See function next for the caveats of modifying the table during its traversal.


    ipairs

    Returns three values: an iterator function, the table t, and 0, so that the construction

         for i,v in ipairs(t) do body end
    

    will iterate over the pairs (1,t[1]), (2,t[2]), ···, up to the first integer key absent from the table.


    实例一

    local tabFiles = {"a","b","c",[7]="d",[8]="e"}
    for k,v in ipairs(tabFiles) do
            print(k,v)
    end

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


    输出结果为:

    1       a
    2       b
    3       c
    1       a
    2       b
    3       c
    7       d
    8       e


    实例二                           

    local tabFiles = {"a","b","c",[3]="d",[4]="e"}
    for k,v in ipairs(tabFiles) do
            print(k,v)
    end

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

    结果为:

    1       a
    2       b
    3       c
    4       e
    1       a
    2       b
    3       c
    4       e


    实例三

    local tabFiles = {"a","b","c",[m]="d",[4]="e"}
    for k,v in ipairs(tabFiles) do
            print(k,v)
    end

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

    输出结果为:

    1       a

    2       b
    3       c
    4       e
    1       a
    2       b
    3       c
    m       d
    4       e

  • 相关阅读:
    洛谷P1170 兔八哥与猎人 欧拉函数的应用
    洛谷P1056 排座椅
    洛谷P1177 【模板】快速排序
    洛谷1059 明明的随机数
    洛谷P1372 又是毕业季I
    洛谷P1042 乒乓球
    洛谷P1086 花生采摘
    洛谷P1031 均分纸牌
    洛谷P1068 分数线划定
    洛谷P1781 宇宙总统
  • 原文地址:https://www.cnblogs.com/mfrbuaa/p/5403861.html
Copyright © 2011-2022 走看看