我正在創建一個 GameOfLife 專案(https://en.wikipedia.org/wiki/Conway's_Game_of_Life),為此我決定需要二維陣列。但我找不到一種簡單的方法來訪問它的元素,比如在 java 中你可以去陣列 [index] [index]。如何訪問單個元素?
val board = Board(
arrayOf(
arrayOf(2, 2, 2),
arrayOf(2, 2, 2),
arrayOf(2, 2, 2)
)
)
println(board.board[2][2]) // this doesn't work
我嘗試像在 Java 中一樣訪問它,因為 Kotlin 是從它派生的,但我想這是錯誤的。我在 Google 中找不到該答案的簡單答案。我是初學者,所以如果這很明顯,請不要生我的氣,因為對我來說不是,我想學習:)。也許我不應該創建 2 個這樣的陣列?
uj5u.com熱心網友回復:
some2dArray[index][index]語法在 Kotlin 中運行良好。在您的示例中,您正在創建一個 Board 物件并將一個二維陣列傳遞給它,但您沒有展示如何宣告 Board 類。如果您只是創建一個二維陣列,您可以看到索引有效。
fun main(args: Array<String>) {
val board =
arrayOf(
arrayOf(2, 2, 2),
arrayOf(2, 2, 2),
arrayOf(2, 2, 2)
)
println(board[2][2]) // this works
}
如果您將您的Board班級宣告為具有名為 board 的二維陣列,那么您所擁有的也將起作用。
class Board(val board: Array<Array<Int>>)
fun main(args: Array<String>) {
val board = Board(arrayOf(
arrayOf(2, 2, 2),
arrayOf(2, 2, 2),
arrayOf(2, 2, 2)
))
println(board.board[2][2]) // this also works
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/532322.html
標籤:爪哇数组科特林
