Lua中检查矩阵中特定值的方法

我创建了一个随机的6x6矩阵,想知道如何识别和检查行和列中的特定值,例如gameboard[1][6] = {},我该如何检查括号里面的内容。

local totalRows= 6
local totalColumns = 6
local gameboard = {}

local function createMatrix()
 for column = 1,totalColumns do
    gameboard[column] = {}
    for row = 1,totalRows do
      gameboard[column][row] = 0
    end
  end
end

local function showMatrix()
  for column = 1,totalColumns do
    for row = 1,totalRows do
      io.write(gameboard[column][row].." ")
    end
    print("\n")
  end
end

--这是创建矩阵的代码

原文链接 https://stackoverflow.com/questions/69472597

点赞
stackoverflow用户2858170
stackoverflow用户2858170

你的代码不会创建一个随机矩阵,因为你将每个元素都赋值为0。你创建了一个6x6的零矩阵。因此,矩阵中的任何元素都是0。因此,获取特定元素的值是不必要的。

正如拉瑟所指出的,你已经知道如何在二维表格中索引字段。

Lua 5.4参考手册3.2变量中:

方括号用于索引表:

 var ::= prefixexp ‘[’ exp ‘]’

gameboard[column] 将计算 column 1到6的表格值。

因此,你可以再次使用相同的方式来索引该内部表格。

local col = gameboard [1]
local val = col [2]

或者简单地使用local val = gameboard [1] [2]

2021-10-07 07:06:19