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

县城做信息网站网站的电子画册怎么做

县城做信息网站,网站的电子画册怎么做,手机登qq电脑版入口,广东网站制作哪家强一、概述 为了帮助您根据使用场景选择合适的作用域函数#xff08;scope function#xff09;#xff0c;我们将对它们进行详细描述并提供使用建议。从技术上讲#xff0c;许多情况下范围函数是可以互换使用的#xff0c;因此示例中展示了使用它们的约定俗成的做法。 1.…一、概述 为了帮助您根据使用场景选择合适的作用域函数scope function我们将对它们进行详细描述并提供使用建议。从技术上讲许多情况下范围函数是可以互换使用的因此示例中展示了使用它们的约定俗成的做法。 1.let函数 上下文对象作为参数it提供。 返回值lambda表达式结果. let可以用于在调用链的结果上调用一个或多个函数。例如 var name kotlin var sub name.substring(0,2) println(sub) 用let重写上面的例子不用分配一个新的变量就会直接输出结果: var name kotlin name.substring(0,2).let {println(it) } let代码块里如果只有一个函数且函数只有一个参数it可以用::代替it参数 var name kotlin name.substring(0,2).let(::println) let代码块里操作的数值为非空值为了操作非空数值需要在let前用?.操作符 val name: String? null name?.let {println(it) } 为了让代码更用阅读可以自定义变量代替it参数 val name: String kotlin val child: String? name.substring(0, 2) child?.let { sub -println(sub)//sub为自定义的变量代替it参数 } 2.with函数 上下文对象作为接收者this可用。 返回值lambda表达式结果. with 不是一个扩展函数上下文对象this作为参数传递在lamda表达式里this可以被当作接收者. 当不需要返回结果时推荐用with时可以引用上下文对象调用方法。例如 val name kotlin with(name){println(this) } 可以在lamda代码块里引用上下文对象的属性和函数例如 val name kotlin println(result:${with(name) {length substring(0, 2).length}} ) 3.run函数 上下文对象作为接收者this可用。 返回值lamda表达式结果 run 跟with作用相同但run是一个扩展函数。像let对象可以通过点符号引用run。当lamada表达式中同时有初始化和计算操作可用run函数。例如 class User{var name: String? nullvar age 0}User().run {name javaage 99Log.d(TAG,User:$name,$age)} 你还可以将 run 作为非扩展函数来调用。run 的非扩展版本没有上下文对象但它仍然返回 lambda 表达式的结果。非扩展的 run 允许你在需要表达式的地方执行多个语句的代码块。在代码中非扩展的 run 可以理解为“运行代码块并计算结果”。例如 var name cname.run {var y 123println($this,$y)} 4.apply函数 上下文对象作为接收者this可用。 返回值this对象本身. 因为 apply 函数返回引用对象本身主要用于对象的成员操作时可用apply函数。主要应用appply函数的地方是对象的配置。对apply调用可以被当作是对象的初始化。 class User {var name: String? nullvar age 0fun set(ageParam: Int) {age ageParam}fun get(): Int {return age}}User().apply {name javaage 99set(100)Log.d(TAG, User:$name,${get()})} 另一个 apply 的使用场景是将其包含在多个调用链中以进行更复杂的处理。例如 class User {var name: String? nullvar age 0fun set(ageParam: Int) {age ageParam}fun get(): Int {return age}}User().apply {name javaage 99set(100)Log.d(TAG, User:$name,${get()})}.apply {name cLog.d(TAG, User:$name,${get()})} 5.also函数 上下文对象作为参数(it)提供. 返回值引用对象本身 also 用于操作上下文参数对象。引用also的操作都是针对引用对象而不是它的属性和方法或者是不想对外部作用域隐藏this对象。 常用于链式调用中在不改变对象的情况下插入一些中间操作。 当看到also时可以读作“also跟随对象”。 User().also {it.set(100)Log.d(TAG,also引用,user:${it.age})}.also {it.set(99)it.name kotlin}.run {Log.d(TAG,run引用user$name, $age)} 二、区别 1.参数 自定义参数it名字唯独let函数可以自定义参数it名字 函数参数传递唯独with函数把引用对象作为参数输入例如withname{} 2.返回值 letwith和run返回值为lamda表达式结果而apply和also返回值为引用对象本身 3.参数this和it 参数为this的函数为withrun和apply可直接操作对象的属性和方法。 参数为it的函数为不能直接操作对象的属性和方法。 推荐文章 Scope functions | Kotlin Documentation
http://www.w-s-a.com/news/726562/

相关文章:

  • 网站免费维护建立网站国家城乡建设部投诉网站
  • 企业网站必须备案吗wordpress导入数据库依然无法链接
  • 浅谈高校网站群的建设网站不支持m.域名
  • 和平网站建设公司做实验教学视频的网站
  • 音乐网站源码带手机版WordPress菜单调用不出
  • 昆明网站设计都需要设计什么网络推广岗位职责和任职要求
  • 国外公司网站模板网站建设公司选择意见书
  • 如何创建一个网站卖东西郑州 网站建设公司
  • 石景山郑州阳网站建设南京网站搜索引擎优化
  • 一个网站需要哪些备案书店网站建设策划书总结
  • 网站建设的重点是什么注册网站空间
  • 网站公司企业宗旨我的网站 dedecms
  • 沧州网站优化做详情图的网站
  • 中国建设银行公积金网站wordpress表单 post
  • 找权重高的网站方法wordpress视频网站上传视频
  • 营销型网站架构师迁移wordpress500错误
  • 做网站还是博客由()承担
  • wordpress 导购站模板中国最新军事新闻直播83军
  • 公众号h5网站开发wordpress文章主图
  • ps怎么艺术字字体设计网站我想自己做网站
  • 北京做机柜空调的网站模板网站和插件
  • 手机购物网站模板wordpress添加分类文档
  • 网站开发知识网上怎么申请个人营业执照
  • 音乐网站建设费用营销策略都有哪些4p
  • 深圳制作网站怎么样wordpress 学习视频
  • 新公司注册网站传奇手游大型网站
  • 无极网站网站涉案多少人被抓网站的按钮怎么做
  • ds216j做网站做购物网站那个好
  • 做淘宝门头的网站阿里巴巴官网app
  • 安踏网站建设策划方案如何通过域名访问网站