Kotlin 小贴士
Kotlin Tips 是一系列短视频,Kotlin 团队的成员将在其中展示如何以更高效和地道的方式使用 Kotlin,从而在编写代码时获得更多乐趣。
订阅我们的 YouTube 频道,不要错过新的 Kotlin Tips 视频。
Kotlin 中的 null + null
在 Kotlin 中添加 null + null
会发生什么,它会返回什么? Sebastian Aigner 在我们最新的快速技巧中解决了这个谜团。 一路上,他还展示了为什么没有理由害怕可空类型(nullables):
集合项去重
有一个包含重复项的 Kotlin 集合? 需要一个只有唯一项的集合? 让 Sebastian Aigner 在这个 Kotlin 技巧中向您展示如何从列表中删除重复项,或者将它们变成集合(sets):
suspend 和 inline 之谜
为什么像 repeat()
、map()
和 filter()
这样的函数可以在它们的 lambda 表达式中接受挂起函数(suspending functions),即使它们的签名没有意识到协程(coroutines)? 在这集 Kotlin Tips 中,Sebastian Aigner 解决了这个谜题:这与 inline 修饰符有关:
使用完全限定名取消遮蔽声明
遮蔽(Shadowing)是指作用域中的两个声明具有相同的名称。 那么,你该如何选择? 在这集 Kotlin Tips 中,Sebastian Aigner 向您展示了一个简单的 Kotlin 技巧,可以使用完全限定名称精确调用您需要的函数:
使用 Elvis 运算符返回和抛出
Elvis 运算符再次登场! Sebastian Aigner 解释了为什么该运算符以这位著名歌手的名字命名,以及如何在 Kotlin 中使用 ?:
来返回或抛出。 背后的魔法是什么? Nothing 类型。
解构声明
使用 Kotlin 中的解构声明,您可以一次性从单个对象创建多个变量。 在此视频中,Sebastian Aigner 向您展示了一系列可以解构的内容——pairs(对), lists(列表), maps(映射)等等。 那么你自己的对象呢? Kotlin 的 component functions(组件函数)也为此提供了一个答案:
具有可空值的运算符函数
在 Kotlin 中,您可以为您的类重写加法和减法等运算符,并提供您自己的逻辑。 但是,如果您想允许在其左侧和右侧都使用空值怎么办? 在此视频中,Sebastian Aigner 回答了这个问题:
计时代码
观看 Sebastian Aigner 快速概述 measureTimedValue()
函数,并学习如何计时您的代码:
改进循环
在本视频中,Sebastian Aigner 将演示如何改进循环,以使您的代码更具可读性、可理解性和简洁性:
字符串
在本集中,Kate Petrova 展示了三个技巧来帮助您在 Kotlin 中使用 Strings(字符串):
使用 Elvis 运算符做更多事情
在本视频中,Sebastian Aigner 将展示如何在 Elvis 运算符 中添加更多逻辑,例如在运算符的右侧进行日志记录:
Kotlin 集合
在本集中,Kate Petrova 展示了三个技巧来帮助您使用 Kotlin Collections(集合):
接下来是什么?
- 在我们的 YouTube 播放列表 中查看完整的 Kotlin Tips 列表
- 了解如何为流行的案例编写符合 Kotlin 语言习惯的代码