当前位置: 首页 > news >正文

钦州网站网站建设郴州网站制作公司地址

钦州网站网站建设,郴州网站制作公司地址,可以营销的十大产品,长春做商业平台网站Kotlin let run with apply also 关键字 参考官网学习资料 https://play.kotlinlang.org/byExample/06_scope_functions/ 一、 let Kotlin 标准库函数 let 可用于范围界定和空检查。当在对象上调用时#xff0c;let 执行给定的代码块并返回其最后一个表达式的结果。该对象可…Kotlin let run with apply also 关键字 参考官网学习资料 https://play.kotlinlang.org/byExample/06_scope_functions/ 一、 let Kotlin 标准库函数 let 可用于范围界定和空检查。当在对象上调用时let 执行给定的代码块并返回其最后一个表达式的结果。该对象可在块内通过引用it默认情况下或自定义名称来访问。 fun customPrint(s: String) {print(s.uppercase()) }fun main() {val empty test.let { // 1customPrint(it) // 2it.isEmpty() // 3}println( is empty: $empty)fun printNonNull(str: String?) {println(Printing \$str\:)str?.let { // 4print(\t)customPrint(it)println()}}fun printIfBothNonNull(strOne: String?, strTwo: String?) {strOne?.let { firstString - // 5 strTwo?.let { secondString -customPrint($firstString : $secondString)println()}}}printNonNull(null)printNonNull(my string) printIfBothNonNull(First,Second) }根据字符串“test”的结果调用给定块。 通过 it 引用调用“test”上的函数。 let 返回该表达式的值。 使用安全调用因此 let 及其代码块将仅在非空值上执行。 使用自定义名称代替it以便嵌套let可以访问外部let的上下文对象。在此代码里也就是firstString替代了第一层范围内的itsecondStirng替代了第二层范围内的it 二、 run 与 let 一样run 是标准库中的另一个作用域函数。基本上它执行相同的操作执行代码块并返回其结果。不同之处在于在运行内部对象是通过 this 访问的。当您想要调用对象的方法而不是将其作为参数传递时这非常有用。 fun main() {fun getNullableLength(ns: String?) {println(for \$ns\:)ns?.run { // 1println(\tis empty? isEmpty()) // 2println(\tlength $length) length // 3}}getNullableLength(null)getNullableLength()getNullableLength(some string with Kotlin) }简单来说就是run括号里的可以直接不用额外的this或者it来代替当前对象去调用该对象的方法可以直接调用该对象里的方法 三、with with 是一个非扩展函数可以简洁地访问其参数的成员引用其成员时可以省略实例名称。 class Configuration(var host: String, var port: Int) fun main() {val configuration Configuration(host 127.0.0.1, port 9000) with(configuration) {println($host:$port)}// instead of:println(${configuration.host}:${configuration.port}) }用with修饰的小括号里范围内可以直接不用写对象变量名直接调用成员了比如不用configuration.host,而可以直接写成host 四、apply apply 在对象上执行一段代码并返回对象本身。在块内对象由 this 引用。该函数对于初始化对象很方便。 data class Person(var name: String, var age: Int, var about: String) {constructor() : this(, 0, ) }fun main() {val jake Person() // 1val stringDescription jake.apply { // 2name Jake // 3age 30about Android developer}.toString() // 4println(stringDescription) }五、also 也像 apply 一样工作它执行给定的块并返回调用的对象。在块内部对象由它引用因此更容易将其作为参数传递。此函数可以方便地嵌入附加操作例如登录调用链。 data class Person(var name: String, var age: Int, var about: String) {constructor() : this(, 0, ) }fun writeCreationLog(p: Person) {println(A new person ${p.name} was created.) }fun main() {val jake Person(Jake, 30, Android developer) // 1.also { // 2 writeCreationLog(it) // 3} }
http://www.pierceye.com/news/672561/

相关文章:

  • 做游戏网站要备案吗群晖做网站需要备案吗
  • 网站制作教程为什么语音转文字里面没有海南的
  • 怎么让别人看到自己做的网站地信的网站建设
  • 网站主体注销泰安新闻视频在线
  • 怀柔网站建设优化seo瓯北网站制作公司
  • 福田住房和建设局网站官网做自己点击网站
  • 临沂市建设局网站简介佛山建网站
  • 哪种类型的网站比较难做阿里云宝塔安装wordpress
  • 购物网站起名网站建设皿金手指排名
  • 河北省住房和城市建设厅网站怎么做cpa网站
  • 网站备案 取名资讯通不过软文投放平台有哪些?
  • 民治做网站多少钱好看的企业网站首页
  • 腾讯域名怎么建设网站客户管理系统免费
  • 承德网站建设报价网站建设中企动力最佳a5
  • 图书馆第一代网站建设海口会计报名网站
  • 网站设计师简介中国工厂网站官方网站
  • 广州移动 网站建设十大职业资格培训机构
  • 网站建设维护协议书网站开发程序用什么好
  • 零基础做网站教程天猫商城商品来源
  • 广州知名网站建设公司教育机构培训
  • 做游戏解说上传在什么网站好企业网站定制
  • 用iis浏览网站南宁网站seo大概多少钱
  • 如何用手机网站做淘宝客wordpress 免费 旅游
  • 青岛网站建设网站制作seo顾问服务福建
  • phpcms网站织梦 网站栏目管理 很慢
  • 金融网站 改版方案seo推广优化培训
  • 博物馆设计网站推荐网站布局有哪些常见的
  • 外贸网站建设980ps软件需要付费吗
  • 网站开发后的经验总结北新泾街道网站建设
  • 深圳市南山区住房和建设局网站国内知名网站建设伺