正文
1.3、数据类
在kotlin中,我们还有可以用data class去定义单纯只是保存数据的数据类:
data class Person(var name: String, var age: Int)
有的同学可能会会,数据类和普通的类有什么区别呢?让我们看下下面的代码就一目了然了:
data class PersonData(var name: String, var age: Int)class PersonClass(var name: String, var age: Int)var dataA = PersonData("jack", 18)var dataB = PersonData("jack", 18)println(dataA) println(dataB) println(dataA == dataB) var classA = PersonClass("peter", 20)var classB = PersonClass("peter", 20)println(classA) println(classB) println(classA == classB)
假设用java去实现的话就不知道这一行的kotlin代码需要多少行才能实现了.
1.4、object 对象
我们能使用object关键字直接实现单例模式:
object DataBaseHelper { ...}
它翻译成java是这样的:
public class DataBaseHelper { public static final DataBaseHelper INSTANCE; private DataBaseHelper() { } static { INSTANCE = new DataBaseHelper(); }}
2、命名参数
kotlin支持命名参数。当一个方法的参数数目特别多的时候,命名参数就很有用了。例如String.regionMatches方法有五个参数:
public boolean regionMatches(boolean ignoreCase, int toffset, String other, int ooffset, int len) { ...}