如何将一个二维数组作为参数传递给Kotlin中的一个函数
import java.io.* import java.util.* fun main(args: Array<String>) { val sc = Scanner(System.`in`) var grid = Array(9, {IntArray(9)}) for(i in 0..grid.size - 1) { var rowArray = IntArray(9) for(j in 0..rowArray.size - 1) { rowArray[j] = sc.nextInt() } grid[i] = rowArray } for(row in grid) { for(j in row) { print(j) print(" ") } println("") } }
你可以像这样传递两个维数组:
fun test(){ var arr: Array<Array<String>> = arrayOf(arrayOf("a","b"),arrayOf("1","2")) twoDimenArgTest(arr) } fun twoDimenArgTest(arr: Array<Array<String>>){ arr.forEach { it.forEach { println(it) } } }
如果这个答案不完整,你应该指定错误,如s1m0nw1建议。
传递二维数组只是传递网格对象
twoDimensionalRx(grid)
并接收类型为Array <IntArray>的var
fun twoDimensionalRx(a:Array<IntArray>){ ... }
- 在Kotlin创建文件ZIP
- 如何设置我的运动侦听器的存在视图
- 在lite模式下的MapView在onSaveInstanceState调用时崩溃
- 由于NoClassDefFoundError而导致的工具测试失败
- 如何与Kapt3一起使用lombok
- Kotlin Custom View类实现了一个无法在`:app:compileDebugKotlinAfterJava`中解析的接口。 相同的Java版本正常工作
- 属性包括/排除Kotlin数据类
- Kotlin的Iterable和Sequence看起来完全一样。 为什么需要两种types?
- 在Android Studio中将文件(使用Git进行跟踪)从Java转换为Kotlin