val sum ={arg1:Int,arg2:Int ->//lamba 表达式和匿名函数一样的
println("arg1={$arg1} arg2=${arg2}")
arg1+arg2//最后一行返回值
//(Int,Int)-> Int 传入两个int 返回一个int
}//参数返回值可以用->分割
val printHello={ print("Hello")}
fun main(args:Array<String>){
println(sum(1,1))
sum.invoke(1,2)//两种调用方式
for(a in args){//数组的遍历
println(a)
}
args.forEach { //Array 扩展方法
println(it)
}
args.forEach ({ element-> println(element) })//forEach参数传入的lamba表达式
//参数最后一个参数为lamba表达式 {}可以放到()外面 只有一个lamba参数 可以去掉()
args.forEach (::println ) //只有一个lamba表达式 可以用一个相同参数 相同返回值函数去代替::
args.forEach {//labada只有一个参数 默认为it
if(it == "q")
return
println(it)
}
println("the end")//如果传入的参数有q 不会return以后 不会执行到这里
//lamba 表达式return return的是main函数
// 如果需要终止循环 则需要标签
args.forEach forEach@{
if(it == "q")
return@forEach//终止迭代
println(it)
}
println("the end")
println(sum)//函数的类型 Function2<Integer,Integer>() (Int,Int)->Int
}
kotlin lambada表达式
最新推荐文章于 2024-10-11 09:57:41 发布