Android 使用Kotlin为迷宫游戏创建2d阵列
所以我有一个叫做Cell的类,我想创建一个对象矩阵Cell,但是我被卡住了,迷路了,这是我到目前为止得到的,它不起作用 我该怎么做才对呢?谢谢Android 使用Kotlin为迷宫游戏创建2d阵列,android,arrays,class,matrix,kotlin,Android,Arrays,Class,Matrix,Kotlin,所以我有一个叫做Cell的类,我想创建一个对象矩阵Cell,但是我被卡住了,迷路了,这是我到目前为止得到的,它不起作用 我该怎么做才对呢?谢谢 class GameView(context: Context?, attrs: AttributeSet?) : View(context, attrs) { private val COLS:Int = 7 private val ROWS: Int = 10 fun createMaze(){ //this gives me an
class GameView(context: Context?, attrs: AttributeSet?) :
View(context, attrs) {
private val COLS:Int = 7
private val ROWS: Int = 10
fun createMaze(){
//this gives me an error Type inference failed. Expected type
//mismatch:
//required:
//Array<Array<Cell>>
//found:
//Array<IntArray>
var cells: Array<Array<Cell>> = Array(COLS, {IntArray(ROWS)})
for(x in 0..COLS){
for(y in 0..ROWS){
cells[x][y] = Cell(x,y)
}
}
}
}
class Cell(var col:Int, var row: Int){
var topWall = true
var leftWall = true
var bottomWall = true
var rightWall = true
}
类游戏视图(上下文:context?,属性:AttributeSet?):
视图(上下文,属性){
私有值COLS:Int=7
私有val行:Int=10
乐趣创造迷宫(){
//这给了我一个错误类型推断失败。类型应为
//不匹配:
//所需:
//排列
//发现:
//排列
变量单元格:数组=数组(列,{IntArray(行)})
对于(x/0..COLS){
对于(0..行中的y){
单元[x][y]=单元(x,y)
}
}
}
}
类单元格(变量列:Int,变量行:Int){
var topWall=true
var leftWall=true
var bottomWall=真
var rightWall=true
}
您将单元格类型定义为Array
,但初始化为Array
我认为这只是一个小小的变化:
class Cell(var col:Int=0, var row: Int=0){
var topWall = true
var leftWall = true
var bottomWall = true
var rightWall = true
}
var cells: Array<Array<Cell>> = Array(COLS, {Array<Cell>(ROWS, {Cell()})})
类单元格(变量列:Int=0,变量行:Int=0){
var topWall=true
var leftWall=true
var bottomWall=真
var rightWall=true
}
变量单元格:数组=数组(COLS,{Array(ROWS,{Cell()})})