Kotlin函数和方法的基本概念

1,658 阅读1分钟

一、函数的声明

Kotlin 中的函数使用 fun 关键字声明:

fun fun1(x: Int): Int {
    return 2 * x
}

函数的传统调用:

val result = fun1(2)
println("result:$result")

函数和方法的区别

方法可以认为是函数的一种特殊类型,从形式来说,有Receiver的函数就是方法,就是写在类里面的函数就是方法,如:

class FunTest{

    fun test(){}

    fun test(str:String):String{
        return str
    }

    fun test(s:String,i:Int):Any{ //Any同等于Java中的object
        return "$s:$i"
    }
}

类成员方法的调用

这里的使用基本和Java中的类调用相似:

val mFunTest = FunTest()
println(mFunTest.testFun("函数",666))

方法中设置默认参数

函数参数可以有默认值,当省略相应的参数时使用默认值。可减少重载数量:

fun defaultParamter(x:Int,y:String,z:Long = 0L){

}

当调用defaultParamter方法时,只传前两个参数,那第三个参数就会默认是默认值:

defaultParamter(9,"kt")

需要注意的是,如果不使用形参来显示接收参数,默认参数要放在最后一个,不然编译器有可能出错,如果以下面情况接收参数,默认参数可以随意放:

defaultParamter(x=9,y="kt")

可变长参数

函数的参数(通常是最后一个)用 vararg 修饰符标记就是可变长参数

fun mutilParamter(vararg ints:Int){
    //ints 完全可以当做数组使用
    println(ints.contentToString())
}

//调用
mutilParamter(1,2,3,4,5)