Kotlin 中有许多很棒的功能,我们可以利用所有这些功能在 Kotlin 中编写更好的应用程序。在所有这些特性中,apply和with是重要的特性。根据定义,apply 接受一个函数,并将其范围设置为调用 apply 的对象的范围。这意味着不需要对对象的显式引用。
一、什么时候用“apply”,什么时候用“with”
根据定义,apply 接受一个函数,并将其范围设置为调用 apply 的对象的范围。这意味着不需要对对象的显式引用。Apply() 当然可以做的不仅仅是简单地设置属性。它是一个转换函数,能够在返回之前评估复杂的逻辑。最后,该函数仅返回相同的对象(添加了更改),因此可以在同一行代码中继续使用它。
二、看看“apply”和“with”之间的区别
主要有两个区别:
- apply接受一个实例作为接收者,而with需要一个实例作为参数传递。在这两种情况下,实例都将成为块内的 this。
- apply返回接收者并返回其块中最后一个表达式的结果。
通常,当你需要对一个对象做某事并返回它时,你会使用apply 。当你需要对一个对象执行一些操作并返回一些你可以使用的其他对象时。
来源:https://www.jianshu.com/p/ca6f93d3b53f
延伸阅读
kotlin是什么
Kotlin是一种静态类型的编程语言,由JetBrains团队在2011年首次公开发布。JetBrains是知名的集成开发环境(IDE)IntelliJ IDEA的开发商。Kotlin语言是在Java虚拟机(JVM)上运行的,旨在更有效地开发Java平台的应用。此外,Kotlin也可以被编译为JavaScript代码或者用于原生代码开发。
以下是Kotlin的一些主要特性:
1. 互操作性:Kotlin与Java完全兼容。这意味着它可以使用所有现有的Java框架和库,可以在Java代码中调用Kotlin代码,反之亦然。
2. 简洁:Kotlin的设计目标之一是创建一种语法更加简洁,能够提高开发人员生产力的语言。它提供了很多能够减少样板代码的特性,比如数据类(data classes)、类型推断等。
3. 安全:Kotlin设计了很多功能来避免常见的编程错误,如空指针异常。例如,Kotlin在类型系统级别进行了非空检查。
4. 现代:Kotlin包含许多现代编程语言的特性,如函数式编程元素(高阶函数,lambda表达式等)、解构声明和扩展函数等。
5. 脚本语言:虽然Kotlin是一种静态类型语言,但也可以作为一种脚本语言使用。
在2017年,Google宣布将Kotlin作为Android应用开发的官方语言,使其在Android开发者社区中受到了广泛的关注和应用。总的来说,Kotlin是一种简洁,现代,安全的编程语言,旨在提高开发人员的生产力,同时保持与Java的完全兼容性。
文章标题:kotlin中apply和with的区别和用法是什么,发布者:E.Z,转载请注明出处:https://worktile.com/kb/p/51955