【第一阶段】kotlin的函数

  • 函数头
kotlin 复制代码
fun main() {
   getMethod("zhangsan",22)
}

//kotlin语言默认是public,kotlin更规范,先有输入( getMethod(name:String,age:Int))再有输出(Int[返回值])
private fun getMethod(name:String,age:Int): Int{
    println("我叫$name,我今年$age")
    return 200
}

执行结果

  • 默认参数
    有默认可不用传参数,也可以传值覆盖
kotlin 复制代码
fun main() {
   getMethod01("zhangsan",22)
   //函数有默认值,不传会打印默认值,传参数会覆盖默认值
   getMethod02("lisi")
   getMethod02("lisi",30)
   getMethod03()
   getMethod03("maliu",40)
   
}

private fun getMethod01(name:String,age:Int): Int{
    println("我叫$name,我今年$age")
    return 200
}

private fun getMethod02(name:String,age:Int=25): Int{
    println("我叫$name,我今年$age")
    return 200
}

private fun getMethod03(name:String="王五",age:Int=25): Int{
    println("我叫$name,我今年$age")
    return 200
}

执行结果

  • kotlin具名参数
    在java中传参需要和调用方法的参数顺序保持一致,在kotlin中调用时可以直接根据参数名称来传入
kotlin 复制代码
fun main() {
   getMethod01(age=23,username="zhangsan",name="lisi",psd=123456789)
}

private fun getMethod01(name:String,age:Int,username:String,psd:Int): Int{
    println("name=$name,age=$age,username=$username,psd=$psd")
    return 200
}

执行结果

  • kotlin的Unit
    java语言的void关键字(void是 无参数返回的 忽略类型)但他是关键字啊 不是类型,相矛盾
    kotlin中Unit 不写,默认也有,Unit代表:无参数返回的 忽略类型==Unit类型类
kotlin 复制代码
private fun getMethod01(name:String,age:Int,username:String,psd:Int): Unit{
 
}
private fun getMethod02(name:String,age:Int,username:String,psd:Int){
 
}
相关推荐
一抓掉一大把14 分钟前
秒杀-StackExchangeRedisHelper连接单例
java·开发语言·jvm
星释28 分钟前
Rust 练习册 :Minesweeper与二维数组处理
开发语言·后端·rust
Q_Q19632884751 小时前
python+django/flask基于深度学习的个性化携程美食数据推荐系统
spring boot·python·深度学习·django·flask·node.js·php
胡耀超1 小时前
通往AGI的模块化路径:一个可能的技术架构(同时解答微调与RAG之争)
人工智能·python·ai·架构·大模型·微调·agi
清空mega1 小时前
从零开始搭建 flask 博客实验(常见疑问)
后端·python·flask
xier_ran1 小时前
关键词解释:DAG 系统(Directed Acyclic Graph,有向无环图)
python·算法
开发者小天1 小时前
React中的useRef的用法
开发语言·前端·javascript·react.js
xixixin_1 小时前
【React】检测元素是否出现在用户视窗内
开发语言·前端·javascript·react.js
Js_cold2 小时前
Verilog局部参数localparam
开发语言·fpga开发·verilog
Acrelhuang2 小时前
小小电能表,如何撬动家庭能源革命?
java·大数据·开发语言·人工智能·物联网