我们之前有讲数据类,也就是data,他的角色充当我们的JavaBean,比如我们的列表就经常会使用到,但是data修饰的class,有一个问题就是,无法实现一个空的构造参数,我们看下他的提示: 可以看到,如果我们不传递参数,则会提示我们必须要传递一个参数,也就是这样的实现 但是我们有时候有一些需求是不需要构造函数中有参数的,...
} 也就是我们传进来要转换的结果class,gson通过默认构造函数构造了一个Person对象,通过遍历field,并进行一一匹配填充,而没有读取到的初始值为空,所以我们在data class中赋的值没有意义了~ 构造器.jpg log.jpg 看一下Kotlin的构造器问题 默认构造.jpg 也就是说,我们赋的默认值失去了意义~ 其实也没啥,就是记录...
哈哈,感谢回答,无参构造函数不是我想要的,这里mybatis需要的是一个有两个long类型参数的构造函数,已经找到解决办法了。添加一个两个long参数的二级构造函数就好了,具体代码是这样的: data class Child( var stuId: Long, var schoolId: Long, var stuName: String = "", var stuAvatar: String = "" ) {...
data class Person(val name: String, val age: Int) ``` 这个主构造函数定义了一个data class Person,它有两个属性name和age。 次构造函数可以用关键字constructor来定义。次构造函数必须调用主构造函数或者另一个次构造函数。例如: ``` data class Person(val name: String, val age: Int) { constructor(...
数据类Data classes 函数字面量和内联函数Function literals & inline functions 函数扩展Extension functions 空安全Null safety 智能转换Smart casts 字符串模板String templates 主构造函数Primary constructors 类委托Class delegation 类型推判Type inference
Kotlin中的Data Class Kotlin中的data class是一种特殊的类,用于封装和持有数据,类似于Java中的POJO(Plain Old Java Object)。其主要特点是编译器会自动为data class生成一些常用的方法,例如equals()、hashCode()、toString()、componentN()和copy()等。 Data Class构造函数的自动生成 在Kotlin中,当你定义一个data...
4. 空指针安全 5. 定义函数 6. 构造函数 7. 单例模式 8. 数据类 9. in、区间、集合 10. it、 let、 apply 、run、 with 函数 11. 补充 1. 万能的: 2. 初始化和延时加载 Kotlin中必须为变量赋值,否则会报错 val name //报错 val name = "Kotlin" //正确有时候在定义变量的时候不能初始化,比如...
空引用(Null references):Java 中的 null 值是经常导致程序运行出错的原因之一,因为 Java 不支持空安全。 更少的函数式编程特性:Java 语言在函数式编程方面的支持相对较弱,虽然 Java 8 引入了 Lambda 表达式和 StreamAPI,但是 Kotlin 语言在这方面的支持更加全面和友好。
数据类Data classes 函数字面量和内联函数Function literals & inline functions 函数扩展Extension functions 空安全Null safety 智能转换Smart casts 字符串模板String templates 主构造函数Primary constructors 类委托Class delegation 类型推判Type inference
空安全(Null safety) 类型推断(Type inference) 数据类 (Data classes) 扩展函数 (Extension functions) 智能转换(Smart casts) 字符串模板(String templates) 单例(Singletons) 函数类型 (Function Type ) Lambda 表达式 高阶函数(Primary constructors)