layout: post
title: "kotlin-程序结构1"
subtitle: "认命就是你和你的自尊心野心不甘心一起围着桌子坐下来 握手言和"
程序结构
常量与变量
val
- 类似于java的final
- 不能重复赋值
var
- 可以重复赋值.
const
- 加上 const 关键字
- 程序在编译的时候就已经知道它的值了
- 并且把代码中其他地方对它的引用替换成它的值
- 这样可以提高代码的执行效率
const val x = 5 //编译期常量
val s = "你好" //运行时常量
函数
什么是函数?
函数就是特定功能的代码块
-
fun[函数名]([参数列表]):[返回值类型]{[函数体]}
-
fun[函数名]([参数列表])=[表达式]
fun hi(name:String){ println("hi,$name") }
fun hi(name: String) = println("hi,$name")
匿名函数
- 没有名字的函数
- 需要用一个变量来接收函数的返回
val hi = fun(name: String) = println("hi,$name")
编写函数注意事项
- 功能单一
- 函数名要顾名思义
- 参数个数不要太多
Lambda表达式
什么是Lambda表达式?
- 匿名函数
- 写法 : {(参数列表) -> {函数体,最后一行是返回值}}
val sum = {x:Int,y:Int->x+y}
Lambda的类型举例
-
()->Unit
- 无参,返回值为Unit
-
(Int)->Int
- 传入整形,返回一个整形
-
(String,((String)->String))->Boolean
- 传入字符串,Lambda表达式,返回Boolean
Lambda表达式的简化
- 函数参数调用时最后一个Lambda可以移出去
- 函数参数只有一个Lambda,调用时小括号可以省略
- Lambda只有一个参数可默认为it
- 入参,返回值与形参一致的函数可以用函数引用的方式作为实参传入
网友评论