Kotlin学习3.1:函数的介绍

函数的定义

函数又称为方法,是具有特定功能的一段独立程序。
函数可以将功能代码进行封装,在使用时直接调用即可,这样程序代码不仅看起来简洁,而且还减少了代码量。
函数的语法格式如下:

函数声明 函数名称 (【参数名称:参数类型,参数名称:参数类型】):返回类型{
	执行语句
	。。。
	return 返回值
}
  • 函数声明:Kotlin中的函数声明使用关键字fun。
  • 函数名称:每个函数都有函数名称,方便在函数调用时使用。
  • 参数类型:用于限定调用函数时传入参数的数据类型。
  • 参数名称:是一个变量,用于接收调用函数时传入的数据。
  • 返回值类型:用于限定函数返回值的数据类型。
  • 返回值:被return语句返回的值,该值会返回给调用者。

接下来我们通过一个实例来创建一个函数。代码如下:

fun main(args:Array<String>) {
    var result = sum(1,2)
    println(result)
}
//定义sun函数,参数为a,b,参数类型为Int,返回值类型为Int
fun sum(a:Int, b:Int):Int{
    return a+b
}

在这里插入图片描述

函数的类型

有参数无返回

fun sum(str:String){
    println("该函数传递的参数为" + str)
}

有参数有返回

fun sum(str:String){
    return str
}

无参数无返回

fun sum1(){
    println("这是有参数无返回的函数")
}
fun sum2():Unit{
    println("这也是有参数无返回的函数")
}

无参数有返回

fun sum():String{
    return "这是无参数有返回的函数"
}

单表达式函数

如果函数体只有一行代码,则可以把包裹函数体的花括号{}替换为等号=,把函数体放在等号 = 的后面,这样的函数称为单表达式函数。

如果函数体中的代码不止一行,就不能转换为单表达式函数。
实例代码如下:

//普通函数
fun sum(a:Int, b:Int):Int{
    return a+b
}
//单表达式函数
fun sum(a:Int, b:Int):Int = a+b
//可以省略返回值类型
fun sum(a:Int, b:Int) = a+b

函数的参数

具名参数

具名参数,顾名思义,就是指在调用函数时显示指定形参的名称,这样即使形参和实参的顺序不一致也不会有任何影响,这样有助于提高代码的可读性。
代码格式:

函数名称 (形参1=实参1,形参2=实参2,形参3=实参3。。。)

示例代码:

fun main(args:Array<String>) {
    info(name="haha",age=18)
}
fun info(name:String, age:Int){
    println(name)
    println(age)
}

在这里插入图片描述

默认参数

默认参数,是指在定义函数时,可以给函数中的每一个形参指定一个默认的实参。
代码格式:

fun 函数名称 (形参1:,形参2:类型 = 默认值。。。){
	函数体
	。。。
}

示例代码:

fun main(args:Array<String>) {
    info(age=18)
}
fun info(name:String = "wowo", age:Int){
    println(name)
    println(age)
}

在这里插入图片描述

可变参数

可变参数,是指参数类型确定但个数不确定的参数,可变参数通过关键字vararg标识,我们可以将其理解为数组。

可变参数通常声明在形参列表中的最后位置,如果不声明在最后位置,那么可变参数后面的其他参数都需要通过命名参数的形式进行传递。

示例代码:

fun main(args:Array<String>) {
    sum("xxx", 100, 99, 78)
}
fun sum(name:String = "wowo", vararg scores:Int){
    var result = 0
    scores.forEach { result += it }
    println("$name 的成绩是" + result)
}

在这里插入图片描述

博客为个人收集学习,供大家交流学习。
参考书籍:《Kotlin从基础到实践》

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值