Kotlin学习

学习Kotlin原因及意义

说起学习它的原因和意义,(1)越来越多的Android开发者使用它(2)它是Android开发的Google官方推荐语言,一定能得到越来越好的支持(3)我个人从学习它来看,就像大家说的它是Java的语法糖,使用它可以几行替代原来十几行的Java代码,它把我们常写的逻辑总结成了语法,一句搞定,还是很好的。

Kotlin主要知识点

1.object(参考:https://blog.csdn.net/xlh1191860939/article/details/79460601)
(1)对象声明
相当于Java的单例
(2)伴生对象
相当于Java的静态属性及方法
(3)对象表达式
相当于Java的匿名内部类
webview?.webViewClient = object : WebViewClient() {
override fun shouldOverrideUrlLoading(view: WebView, url: String): Boolean {
return true
}
}
2.var val const
对象访问类型声明
var : 可修改
const只能修饰val
const val 可见性为public final static,可以直接访问。
val 可见性为private final static,并且val 会生成方法getNormalObject(),通过方法调用访问。
当定义常量时,出于效率考虑,我们应该使用const val方式,避免频繁函数调用。
3.非空判断?
private var listener: OnClickListener? = null
private var temp: CharSequence? = null
if (temp!!.length > xx) //如果temp为空也执行长度判断
if(temp?.length > xx)//如果temp不为空的时候才执行长度判断
4类的构造方法
constructor(context: Activity, type: Int, listener: OnClickListener?) : super(context) {
次构造方法要:主构造this/父类
注意⚠️:子类创建对象的时候父类一定会被先创建,这也是为什么子类能够调用父类方法的原因。
5.程序控制
view = when (type) {
AAXX, BBXX ->
inflater.inflate(R.layout.XX, null)
else -> inflater.inflate(R.layout.XX2, null)
}
for (item in infoList) {
}

6.let的使用(参考 https://blog.csdn.net/u013064109/article/details/78786646#2)
let扩展函数的实际上是一个作用域函数,当你需要去定义一个变量在一个特定的作用域范围内,let函数的是一个不错的选择;let函数另一个作用就是可以避免写一些判断null的操作。

object.let{
it.todo()//在函数体内使用it替代object对象去访问其公有的属性和方法

}

//另一种用途 判断object为null的操作
object?.let{//表示object不为null的条件下,才会去执行let函数体
it.todo()
}

7.函数的定义
fun shouldOverrideUrlLoading(view: WebView, url: String): Boolean {
return true
}
fun shouldOverrideUrlLoading(view: WebView, url: String) = true

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值