drupal7建站教程,胶州网站建设哪里有,营销机构代码查询,自贡市工程造价信息网写在前面#xff1a; 如果文章对你有帮助#xff0c;记得点赞关注加收藏一波#xff0c;利于以后需要的时候复习#xff0c;多谢支持#xff01; 【Kotlin语言学习】系列文章
第一章 《认识Kotlin》 第二章 《数据类型》 第三章 《数据容器》 第四章 《方法》 第五章 《L… 写在前面 如果文章对你有帮助记得点赞关注加收藏一波利于以后需要的时候复习多谢支持 【Kotlin语言学习】系列文章
第一章 《认识Kotlin》 第二章 《数据类型》 第三章 《数据容器》 第四章 《方法》 第五章 《Lambda表达式与条件控制》 第六章 《泛型》 一、Lambda表达式
在Kotlin中Lambda表达式是一种轻量级的匿名函数它可以作为参数传递给其他函数。Lambda表达式的语法形式如下。
{ 参数列表 - 函数体 }其中参数列表是可选的函数体可以是一个表达式或者代码块。Lambda表达式的类型是函数类型可以通过声明一个变量或参数的方式来存储它。
Lambda表达式的主要优点之一是它的简洁性和灵活性。它允许在需要函数作为参数的地方以一种简洁、直观的方式来定义函数行为。Lambda表达式常用于Kotlin中的函数式编程例如在集合操作中使用map、filter、reduce等高阶函数时经常会用到Lambda表达式。
下面是简单的示例。
// 自定义函数使用Lambda表达式来判断一个数字是否为偶数
fun isEven(number: Int, check: (Int) - Boolean): Boolean {return check(number)
}fun main() {val number 10// 使用Lambda表达式作为参数判断一个数字是否为偶数val result isEven(number) { it % 2 0 }if (result) {println($number 是偶数)} else {println($number 是奇数)}
}阅读示例代码可以看到首先自定义的isEven函数中就使用了Lambda表达式其函数定义逻辑为定义一个名为isEven的函数形参设有两个分别是number和check其中number要求传入的是整型变量而check则是一个函数这个函数并没有通过传统方式定义而是通过Lambda表达式表示传入一个整型变量返回一个布尔值这个check函数在函数内部使用作为返回值定义函数返回值类型为布尔值——整个函数定义表达式的含义就是输入整型变量返回一个布尔值。
而在接下来的输出函数中设定number变量为10使用isEven函数令number返回一个布尔值这里又使用了一个Lambda表达式来判断返回的值是否除以2无余数是则为真否则为假接着就使用了一个if判断语句将偶数判断结果打印出来。
可以看到在Lambda表达式中-左边是参数列表而右边则是Lambda函数的具体函数和操作。
其中要注意的是it在Lambda表达式中只有参数仅有一个的时候才可以使用同时it不作为关键字却同样可以在调用变量比如函数定义中作为单个变量的隐式名称从而简洁语句编写。
二、条件控制
条件控制语句在每门编程语言中都是必不可少的部分在Kotlin语言中是使用if-else语句和when语句来实施条件控制。
那么设计一个简单的逻辑要求输入两个数字输出较大的那一个。
如果使用if语句则设计的语句可以是这样。
fun main() {val x 10val y 20// 使用 if-else 控制结构if (x y) {println(x 大于 y)} else if (x y) {println(x 小于 y)} else {println(x 等于 y)}
}同其他语言的if语句一样使用if关键字设定条件同时else if设置第二个条件剩余情况则在else下输出。
而如果使用when判断语句设计则是这样的。
fun main() {val x 10val y 20// 使用 when 表达式进行条件控制when {x y - println(x 大于 y)x y - println(x 小于 y)else - println(x 等于 y)}// 使用 when 表达式带参数的形式进行条件控制when (x) {10 - println(x 等于 10)20 - println(x 等于 20)else - println(x 既不等于 10 也不等于 20)}
}可以看到如果使用when语句对于多结果可能性的判断情况更为合适。-左边是判断条件右边则是满足该条件的情况下执行的逻辑与if语句一样也有else关键字代表剩余判断情况。 我是EC一个永远在学习中的探索者关注我让我们一起进步