Kotlin 的 in 和 out 说起 这期是码上开学 Kotlin 系列的独立技术点部分的第一期,我们来聊一聊泛型。 提到 Kotlin 的泛型,通常离不开 in 和 out 关键字,但泛型这门武功需要些基本功才能修炼,否则容易走火入魔,待笔者慢慢道来。 下面这段 Java 代码在日常开发中应该很常见了: ☕️ List textViews = new ArrayList(); 其中 List
序列(Sequence) VS 集合(Iterable) 举个例子:给定一个字符串,过滤长于三个字符的单词,并打印前四个单词的长度 Iterable写法: fun main() { val words = "The quick brown fox jumps over the lazy dog".split(" ") val lengthsList = { println("filter: $it
要想使用反射,首先需要添加依赖,下面是maven中的依赖: org.jetbrains.kotlinkotlin-reflect 根据类获得Class引用 class A funmain(){var kClass = A::classprintln(kClass)// kclassprintln(kClass.java)// class of java languagevar stringClas
Kotlin 可以对一个类的属性和方法进行扩展,且不需要继承或使用 Decorator 模式。 扩展是一种静态行为,对被扩展的类代码本身不会造成任何影响。 扩展函数 扩展函数可以在已有类中添加新的方法,不会对原类做修改,扩展函数定义形式 fun receiverType.functionName(params){ body } receiverType:表示函数的接收者,也就是函数扩展的对象 fu
学习 kotlin 泛型的时候,经常会遇到 in out 这两个词,一会用in 一会用out,为啥这里要用 out ?为啥哪里用 in ?啥什么用 out 啥时候用in ?对应上面问题以前我是晕乎乎的,不是很明白,于是打算写这篇文章梳理一下,搞清楚怎么回事。 Java 泛型 在学kotlin 泛型之前,先回顾一下Java中的泛型 为了方便说明引入下面几个类 具体代码 publicclassAnim