犀利的小眼神

kotlin可变参数作为参数传递

kotlin可变参数作为参数传递时,需要使用*进行解引用,如果不解引用,传递的是地址

直接传递

fun main(args: Array<String>) {
    varargTest(1,2,3,4)
}

fun varargTest(vararg src:Any){
    //不解引用  直接进行传递
    vararg1(src)
}


fun vararg1(vararg src:Any){
    src.forEach {
        println(it)
    }
}

运行结果:

解引用后传递

fun main(args: Array<String>) {
    varargTest(1,2,3,4)
}

fun varargTest(vararg src:Any){
    //解引用传递
    vararg1(*src)
}


fun vararg1(vararg src:Any){
    src.forEach {
        println(it)
    }
}

运行结果:

posted on 2023-09-27 11:05  犀利的小眼神  阅读(185)  评论(0)    收藏  举报

导航