kotlin学习day3:函数

一:Kotlin中函数的定义使用fun关键字


如新建的任意Activity重写父类Activity中的onCreate函数

 override fun onCreate(savedInstanceState: Bundle?){
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
    }

这个函数是没有任何返回值的,省略了关键字Unit(类似于Java中的void)所以我们也可以:

 override fun onCreate(savedInstanceState: Bundle?): Unit {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
    }

但是请注意:Unit是一个真正的对象,点进去看源码:

package kotlin

public object Unit {
    public open fun toString(): kotlin.String { /* compiled code */ }
}

当然我们也可以指定一个函数的返回值类型:


返回值为Int类型的求和函数

fun sum(a: Int, b: Int): Int {
        return a + b
    }

然而如果返回的结果是一个表达式,我们也可以不适用大括号,直接使用等号:

fun sun(a: Int, b: Int): Int = a + b

二:函数参数

Kotlin函数中的参数,我们都是先定义参数名在申明参数类型,这也跟Kotlin中定义变量的方式有关.

    fun toast(content: String, time: Int): Unit {
        Toast.makeText(this, "Toast提示:$content", time).show()
    }

当然我们也可以给参数定义一个默认的值,使得调用这个函数的时候这个参数变的可选:

     fun toast(content: String, time: Int = Toast.LENGTH_SHORT): Unit {
        Toast.makeText(this, "Toast提示:$content", time).show()
    }

调用:

toast("LENGTH_SHORT")
toast("LENGTH_LONG", Toast.LENGTH_LONG)

当然也可以通过参数名来调用即在参数值前面添加参数名:

toast(content = "CONTENT", time = 2)

注:String模板
在Stirng中直接使用模板表达式,可以帮助我们简单的在固定值和变量的基础上编写复杂的String,如上面的”Toast提示:$content“,任何时候使用一个$符号,就可以插入一个表达式,如果表达式足够复杂,我们就需要用一个大括号括起来.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值