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

网站营销策略怎么写asp转换手机网站

网站营销策略怎么写,asp转换手机网站,百度推广个人怎么开户,制作图片软件有哪些应用空类型安全Kotlin引入了可空类型(用#xff1f;标识)#xff0c;在编译期杜绝了可空类型直接调用方法的可能。var a: String abca null // 编译错误var b: String? abcb null // okval l a.lengthval l b.length // 错误#xff1a;变量…应用空类型安全Kotlin引入了可空类型(用标识)在编译期杜绝了可空类型直接调用方法的可能。var a: String abca null // 编译错误var b: String? abcb null // okval l a.lengthval l b.length // 错误变量“b”可能为空val l b?.length ?: 0链式调用灵活使用Kotlin提供的let、apply、takeIf这些方法用链式调用的方式组织代码可以将一大串逻辑分割成几块。File(url).takeIf { it.exists() }?.let {JSONObject(NetworkUtils.postFile(SERVER_URL, url))}?.takeIf { it.optString(message) success }?.let {post(it.optString(result))} ?: mHandler.post { view?.onFail() }默认参数普通的带有默认参数的方法Java是无法调用的因为Kotlin对默认参数的处理并不是生成多个方法而是给方法添加几个额外参数记录调用者传递了多少参数加上了JvmOverloads这个注解之后才会生成多个方法供Java调用。并且Kotlin调用方法可以指定参数名。class CustomLayout JvmOverloads constructor(context: Context, attrs: AttributeSet? null, defStyleAttr: Int 0) : FrameLayout(context, attrs, defStyleAttr), LifeCycleMonitor {// pass}扩展方法扩展方法在项目里使用得比较少但是Kotlin提供的很多语法糖都是利用扩展方法实现的例如forEach、let之类的方法。扩展方法的原理是生成一个静态方法。// _Collections.kt里的扩展方法/*** Performs the given [action] on each element.*/kotlin.internal.HidesMemberspublic inline fun Iterable.forEach(action: (T) - Unit): Unit {for (element in this) action(element)}操作符重载Kotlin会将一些常用的表达式翻译为方法调用最常用的有将 list[0] 翻译成 list.get(0) 将 map[0] someObject 翻译成 map.set(0, someObject)。实际上任意实现operator fun get(a : Any) : Any 和 operator fun set(a : Any, b : Any) 方法的类都可以使用以上两种表达式。// 操作符重载在Kotlin的语法中随处可见下面这个例子说明了for (i in 1..10) {// pass}// 是如何工作的首先明白表达式 .. 对应 rangeTo 方法表达式 in 对应 contains 方法// 在Primitives.kt文件中的Int类里/** Creates a range from this value to the specified [other] value. */public operator fun rangeTo(other: Int): IntRange// 在IntRange类里可以发现 in 这个表达式对应的方法调用 containspublic class IntRange(start: Int, endInclusive: Int) : IntProgression(start, endInclusive, 1), ClosedRange {override val start: Int get() firstoverride val endInclusive: Int get() lastoverride fun contains(value: Int): Boolean first value value last不再使用findViewById在build.gradle中添加 apply plugin:kotlin-android-extensions 就可以直接在代码中用View的id来代替这个View对象。override fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)iv_feedback.setOnClickListener(this)iv_back.setOnClickListener(this)btn_feedback.setOnClickListener(this)反编译发现这种用法的原理是Kotlin会自动生成findViewById的代码在Activity、Fragment和自定义View中Kotlin会使用一个map缓存每次查找到的View避免每次调用View的方法都会重新调用一次findViewById但是需要注意的是通过View.id这种方式获取子View的时候没有缓存所以在RecyclerView的ViewHolder中都会使用一个属性来存储ItemView的某个子View。// Activity中的逻辑public View _$_findCachedViewById(int var1) {if(this._$_findViewCache null) {this._$_findViewCache new HashMap();}View var2 (View)this._$_findViewCache.get(Integer.valueOf(var1));if(var2 null) {// Fragment的代码中这里会调用getView.findViewById所以通过id调用方法需要在onCreateView生命周期之后使用var2 this.findViewById(var1);this._$_findViewCache.put(Integer.valueOf(var1), var2);}return var2;}// RecyclerView的ViewHolder中都会使用一个属性来存储ItemView的某个子Viewprivate val mLabelImage itemView.label_imageprivate val mLabelType itemView.label_type与属性相关的一些改变自带getter/setterKotlin类里的属性自带getter/setter访问权限可以修改也可以重写get/set方法var someString : Stringget() this${toString()}protected set(value) {Log.e(TAG, setValue$value)field value}可以定义在类声明里open class Message(val id: Long,val type: Int,val time: Long,val status : Int)lateInit和by lazy对于一些没有在构造函数里赋值的非空类型对象可以使用lateinit和by lazy来延迟初始化。坑Java调用Kotlin方法时空类型不再安全Java里调用kotlin方法空对象传递给Kotlin的非可空参数会抛异常但是Kotlin无法判断Java传递的对象是否可能为空所以编译器不会报异常。在将Java工程转变成Kotlin工程的过程中不能忽略这个坑。更多协程Anko Layouts代替xmlverticalLayout {val name editText()button(Say Hello) {onClick { toast(Hello, ${name.text}!) }}}
http://wiki.neutronadmin.com/news/433369/

相关文章:

  • 学校网站栏目建设北京师大互联网公司排名
  • 餐饮网站建设目标上海优化网站价格
  • 域名验证网站从零开始学做网站cdsn
  • 怎么查看网站开发语言网站未授权cas要怎么做
  • 制作图网站有哪些内容小说系统 wordpress
  • 吉首网站建设吉首网站建设icp ip 网站备案
  • 做网站的需求布吉做棋牌网站建设找哪家效益快
  • 如何学建设网站wordpress拍卖插件中文
  • 网站开发与设计现状国产免费crm系统有哪些在线
  • 做网站开发的步骤杭州网站建设路
  • 网站建设的流程该怎么确定重庆网络推广网站
  • 网站建设期末考试wordpress google搜索
  • seo网站程序自己开个什么小公司好
  • 网站 封锁右键通过网站做外贸
  • 朝阳周边做网站的公司好的免费个人网站
  • 网站如何申请微信支付接口旅游网站模块报价
  • 网站备案期间重庆网站优化网络服务
  • 网站建设修改企业应用平台和系统管理
  • 阿里备案成功后怎么做网站如何申请建设网站首页
  • 深圳网站建设找哪家网站建设课程ppt
  • 一级做爰A视频免费网站金华企业网站建设公司
  • 罗湖商城网站建设找哪家公司比较安全黑龙江建设网一体化平台
  • 课程网站开发的开题报告哪里买到纯净网站模板
  • 网站制作视频课程有哪些网站是可以做会计题目的
  • 无锡 网站建设页面设计的标准有哪些
  • 公司设计网站有什么好处网站建设流程体会
  • 杭州做网站外包公司网站如何做注册类 cpa
  • 网站开发毕业设计参考文献filetype doc 网站建设
  • 电商网站与企业网站区别龙岩seo外包公司
  • 营销型网站做网站费