
Kotlin
文章平均质量分 85
kotlin 基础语法
别偷我的猪_09
人间处处是繁华,你要全赴努力开花。
展开
-
Android---Kotlin 学习013
Java 世界里所有对象都可能是 null,而 kotlin 里面不能随便给一个变量赋空值的。所有,kotlin 取调用 java 的代码就很容易出现返回一个 null,而Kotlin 的接收对象不能为空,你不能想当然地认为 java 的返回值就能符合 kotlin 关于空值的规定。原创 2023-12-28 21:11:04 · 1171 阅读 · 1 评论 -
Android---Kotlin 学习012
函数式编程范式主要依赖于高阶函数(以函数为参数或返回函数)返回的数据,这些高阶函数专用于处理各种集合,可方便地联合多个同类函数构建链式操作以创建复杂的计算行为。Kotlin 支持多种编程范式,所以你可以混用面向对象编程和函数式编程范式来解决手头的问题。原创 2023-12-28 10:37:12 · 1094 阅读 · 0 评论 -
Android---Kotlin 学习011
扩展可以在不直接修改类定义的情况下增加类功能,扩展可以用于自定义类,也可以用于比如 List、String,已经 Kotlin 标准库里的其它类。和继承相似,扩展也能共享类行为,在你无法接触某个类定义,或者某个类没有使用 open 修饰符,导致你无法继承它时,扩展就是增加类功能的最后选择。原创 2023-12-27 15:47:45 · 1271 阅读 · 0 评论 -
Android---Kotlin 学习010
Kotlin 规定所有的接口属性和函数实现都要使用 override 关键字,接口中定义的函数并不需要 open 关键字修饰,他们默认就是 open 的。原创 2023-12-26 09:39:37 · 1061 阅读 · 0 评论 -
Android---Kotlin 学习009
在 java 里如果一个类没有被 final 关键字修饰,那么它都是可以被继承的。而在 kotlin 中,类默认都是封闭的,要让某个类开放继承,必须使用 open 关键字修饰它,否则会编译报错。此外在子类中,如果要复写父类的某个方法,需要用到关键字 Override(在 kt 中就不是注解了)。并且被复写的方法也需要用 open 关键字来修饰。原创 2023-12-25 19:25:42 · 1723 阅读 · 2 评论 -
Android---Kotlin 学习008
kotlin 允许你不使用临时变量,而是直接用一个定义同时指定参数和类属性。通常,我们更细化用这种方式定义类属性,因为它会减少代码重复。原创 2023-12-25 11:46:18 · 1515 阅读 · 0 评论 -
Android---Kotlin 学习007
集合可以方便你处理一组数据,也可以作为值参传给函数,和我们学过的其它变量类型一样,List、Set 和 Map 类型的变量也分为两类,只读和可变。原创 2023-12-15 10:40:54 · 732 阅读 · 0 评论 -
Android---Kotlin 学习006
解释说明:当 {it.exists() && it.canRead()}(匿名函数) 结果为 true, 那么这一句 takeIf { it.exists() && it.canRead() } 返回接收者对象(即File),然后再调用 readText();和其它标准函数有点不一样,takeIf 函数需要判断 lambda 中提供的条件表达式,给出 true 或 false 结果,如果判断结果为 true,从 takeIf 函数返回接收者对象,如果是 false,则返回 null。原创 2023-12-13 20:29:27 · 780 阅读 · 1 评论 -
Android---Kotlin 学习005
第二个"===" 比较的是 str1 和 str2 是否是同一个对象,这里返回 true,说明它们是同一个对象。原因是因为,在 java 的 JVM 中对字符串的存储是有一个 单独的地方, 叫字符串常量池,当我们创建 str1 = "Jason" 时,那么这个 "Jason" 字符串是在常量池里是。在 kotlin 中,用 == 检查两个字符串中的字符是否匹配,用 === 检查两个变量是否指向内存堆上同一对象,而在 Java 中 == 做引用比较,做结构比较时用 equals 方法。原创 2023-12-13 16:39:44 · 234 阅读 · 0 评论 -
Android---Kotlin 学习004
解释说明:str 为空类型变量,在它上面执行 let 函数,就可以做更多的操作,比如这里的判断你操作。Kotlin 区分可空类型和非可空类型,所以,你要一个可空类型变量运行,而它又可能不存在,对于这种潜在危险,编译器时刻警惕着。Kotlin 标准库提供了一些便利函数,使用这些内置函数,你可以抛出带自定义信息的异常,这些便利函数叫做先决条件函数,你可以用它定义先决条件,条件必须满足,目标代码才能执行。它的作用就是,当 str2 为空时,就直接跳过调用此函数,所以执行该行代码时就不会报空指针异常。原创 2023-12-12 14:59:31 · 145 阅读 · 0 评论 -
Android---Kotlin 学习003
因为当我们定义一个变量时一般是: val blessingFunction : String,所以冒号“:” 后面的内容就是它的类型,即这里一个函数 () -> String(这个函数无参,返回值为 String)。上面代码的最后一个参数是 lambda, 那么括住 lambda 值参的圆括号就不需要了,因为这里 lambda 不是唯一的参数,所以正确的写法是放到圆括号外面,如下代码所示。匿名函数也有类型,匿名函数可以当作变量赋值给函数类型变量,就像其他变量一样,匿名函数就可以在代码里传递了。原创 2023-12-12 10:12:00 · 296 阅读 · 0 评论 -
Android---Kotlin 学习002
在 Kotlin 之前,函数不返回任何东西用 void 描述,意思是“没有返回类型,不会带来什么,忽略它”,也就是说如果函数不返回任何东西,就忽略类型。编译时常量只能是常见的基本数据类型:String,Int,Double,FLoat,Long,Short,Byte,Char,Boolean。因为编译时常量必须在编译时赋值,而函数都是在允许时才调研,函数内的变量也是在运行时赋值,编译时常量要在这些变量赋值前就已存在。来修饰,就相当于 java 中 final 修饰的量,即常量。传入参数在前,返回结果在后。原创 2023-12-11 15:15:31 · 445 阅读 · 0 评论 -
Android---Kotlin 学习001
Kotlin 的应用范围迅速扩展,它从一门前途光明的编程语言摇身一变,成了这个世界上最重要的移动操作系统的钦定开发语言。Kotlin 语法简洁,具备现代高级语言特性,并且能和 Java 遗留代码无缝互操作。因为具备这些优势,今天又来越多的公司使用它开发。原创 2023-12-11 09:58:49 · 351 阅读 · 0 评论