? 将java更改为kotlin时出现空问题

? 将java更改为kotlin时出现空问题,java,android,kotlin,null,Java,Android,Kotlin,Null,我正在尝试将我的程序从java更改为kotlin,所以我使用“将java文件转换为kotlin文件” 但是它有很多错误,我自己解决不了 在var块中:数组

我正在尝试将我的程序从java更改为kotlin,所以我使用“将java文件转换为kotlin文件” 但是它有很多错误,我自己解决不了

var块中:数组?=空

写这个可以吗? 在
{arrayOfNulls(3)}
这个呢 在这门课上,我认为“阻塞”是一个问题

private fun getBlock(y: Int, x: Int): Block? {
    return if (y < 0 || x < 0 || y >= verticalBlockNum || x > horizontalBlockNum) {
        null
    } else block!![y][x]
}
private-fun-getBlock(y:Int,x:Int):Block?{
如果(y<0 | | x<0 | | y>=垂直块数| | x>水平块数),则返回{
无效的
}else块!![y][x]
}

这是我的错误


要修复
arrayOfNulls
您应该指定数组中元素的类型:
arrayOfNulls(3)

第二个问题是,方法
getBlock()
返回类型可为null,但数组被声明为不能包含null,您可以修复该问题以声明可为null的数组:

val targetBlock: Array<Array<Block?>> = Array(3) { arrayOfNulls<Block?>(3) }
val targetBlock:Array=Array(3){arrayOfNulls(3)}
或没有显式类型声明:

val targetBlock = Array(3) { arrayOfNulls<Block?>(3) }
val targetBlock=Array(3){arrayOfNulls(3)}

欢迎来到stackoverflow!请不要发布代码图片,而是发布代码本身和错误消息。这使其他人更容易找到。:)在描述你的问题时,请尽量具体一点。不要只是说:它不工作,请为我修理它。