Android Kotlin

Kotlin入门(二):方法的定义和使用

2018-04-03  本文已影响26人  无余

方法定义

定义语法:

fun  [方法名] ( [参数名] : [参数类型] ) : [返回类型]{
    ...
    return [返回值]
}
fun multiply(x: Int, y:Int): Int {
    return x * y
}

也可以转换为:

fun multiply(x: Int, y: Int): Int = x * y

还可以这样:

var multiply = { x: Int, y: Int -> x * y }
fun log(msg: String): Unit {
    print(msg)
}

Unit也可以省去:

fun log(msg: String) {
    print(msg)
}
fun main(args: Array<String>) {
    Test().method()
}

class Test{
    fun method(){
        print("hello")
    }
}
fun main(args: Array<String>) {
    Test.com()
}

class Test{
    companion object{
        fun com(){
            print("com")
        }
    }
}
package a.b.c

fun top(){
    print("top")
}

fun main(args: Array<String>) {
    a.b.c.top()
}


方法调用顺序可变

fun main(args: Array<String>) {
    log(name = "mao", age = 18)
}

fun log(age: Int, name: String) {
    print("age:$age,name:$name")
}

命名参数

fun logInfo(
        name: String,
        age: Int,
        married: Boolean = true,
        language: String = "Chinese"
) {
    println("[name:$name,age:$age,married:$married,language:$language");
}

必须传入未设置默认值的参数
在上述logInfo方法中,name和age未设置默认值,必须传参,其它参数可自由选择:

    logInfo("ma",18)
    logInfo("ma",18,false);
    logInfo("ma",18,false,"English");

可变参数

fun logInfos(vararg infos: String) {
    for (info in infos) {
        print("$info  ")
    }
}
logInfos("aaa","bbb","ccc")
上一篇 下一篇

猜你喜欢

热点阅读