美文网首页Kotlin学习之路
Kotlin基本语法之(一)变量与方法

Kotlin基本语法之(一)变量与方法

作者: wanderingGuy | 来源:发表于2019-05-22 22:25 被阅读0次

    在Kotlin的世界里函数(方法)是第一公民,它可以存储在变量中,也可以在方法间传递或以方法为返回值(高阶函数),甚至方法内部也可以嵌套方法。

    函数的定义

    以下面的例子做说明

    //计算字符串长度
    fun getLength(str: String): Int {
        return str.length
    }
    

    声明函数的关键字fun,后面跟函数名getLength,括号内为参数列表。

    每一个参数先声明参数名,然后跟冒号:,最后是参数类型,多个参数用逗号分隔。

    Int是返回值类型,它与java中的int包装类Integer对应,参数列表和返回值之间以冒号分隔。

    如果返回值是空可以写做Unit或省略不写。

    //返回值为空
    fun helloWorld(str: String) {
        println("Hello, World!")
    }
    

    可变长参数声明vararg关键字

    @JvmStatic
    fun main(args: Array<String>) {
        print(join('h','e','l','l','o'))
    }
    
    fun join(vararg chars: Char): String {
        return chars.joinToString("")
    }
    
    

    参数默认值

    下面的例子展示了如何使用默认参数,即在参数类型声明后加"=",然后跟默认值,实际调用中默认值可缺省。

    @JvmStatic
    fun main(args: Array<String>) {
        print(join('h','e','l','l','o'))
    
        print(testDefault(2))
    }
    
    //计算次幂
    fun testDefault(base : Int, power : Int=3) : Double{
        return Math.pow(base.toDouble(), power.toDouble())
    }
    

    实际使用中不建议可变长参数和默认参数一起使用,编译器可能产出意想不到的结果。

    变量

    Kotlin中以var关键字声明为变量,val声明为常量。

    变量后可跟参数类型,也可不声明参数类型而通过参数值推断。

    来看例子

    val a: Int = 1 //立即赋值
    val b = 2 // 自动推断出 `Int` 类型 
    val c: Int // 如果没有初始值类型不能省略 
    c = 3 // 明确赋值
    

    给已赋值的常量再次赋值会报错,使用未赋值的常量会报错。

    val c: Int
    c.and(1) // error
    
    val a: Int = 2
    a = 1 // error
    

    相关文章

      网友评论

        本文标题:Kotlin基本语法之(一)变量与方法

        本文链接:https://www.haomeiwen.com/subject/lrgpzqtx.html