如何在Lua中显示2D数组

时间:2015-06-23 20:51:43

标签: arrays lua

这有效:

mt = {}          -- create the matrix
    for i=1,5 do
     mt[i] = {}     -- create a new row
      for j=1,3 do
        mt[i][j] = j
        print(i,j)
      end
    end

但这不是

mt = {}          -- create the matrix
    for i=1,5 do
     mt[i] = {}     -- create a new row
      for j=1,3 do
        mt[i][j] = j
        print(i,j)
        print mt([i][j])
      end
    end

并给出错误

'=' expected near 'mt'

使用此声明

print(i,j,mt([i][j]))

发出此错误

unexpected symbol near '['

我确实读过这个帖子 How do I display array elements in Lua?

但我的问题在于正确的语法更为基础。

1 个答案:

答案 0 :(得分:3)

问题是左括号应紧跟打印而不是 mt 之后,你需要移动括号,产生该行的代码:

print(mt[i][j])

制作完整的代码段:

mt = {}          -- create the matrix
for i=1,5 do
 mt[i] = {}     -- create a new row
  for j=1,3 do
    mt[i][j] = j
    print(i,j)
    print (mt[i][j])
  end
end

你可能做了一个简单的拼写错误,但如果没有,解释(你可能知道)是函数 print()传递参数 mt [i] [j] mt (变量)也是参数的一部分。