Kotlin系列——变量,数据类

2017-12-12  本文已影响81人  李晓通

前言

今天带来Kotlin系列第二篇文章,如何声明变量以及定义数据类,没有开始用Kotlin的小伙伴们可以开始尝试慢慢使用,kotlin和java是可以互调的。

声明变量

java中声明变量

String name = "LXT";
int num = 1;

kotlin声明变量语法

<标识符> : <类型> = <初始化值>

举个例子
var name : String = "LXT"
val num : Int = 1

细心的朋友可能注意到了,在kotlin中是有var和val两种方式的,那么接下来给大家介绍一下kotlin中的一些特征

1. 变量分为var、val两种,分别代表可变变量、不可变变量;
  1. 声明变量时需要指定数据类型,当然kotlin也可以根据变量的初始值推测数据类型;


  1. 数据类型包括Kotlin内置的数据类型以及自定义类等;


  1. 声明成员变量时需要赋初始值,否则编译会报错;


  1. 在类中变量(var)如果需要延后赋值,可以用lateinit修饰。

变量允许是否允许为空

如果我们需要声明一个成员变量,并且允许为空,我们可以这样声明


如果我们需要声明一个成员变量,不允许为空并且想稍后赋值,我们可以这样声明


数据类

声明一个学生类,具有姓名和年龄的属性

java中

在需要用到的地方我们是这样声明的


kotlin中,我们要用到data

编译器会为数据类(data class)自动生成以下函数:
        equals()/hashCode()
        toString() 默认输出"Student(name=LXT, age=20)"
        componentN() 按声明顺序对应于所有属性
        copy()

注意了,这里说一下data数据类必须满足的条件

    主构造函数至少有一个参数;
    主构造函数的所有参数需标记为val 或 var;
    数据类不能是抽象、开放、密封或者内部的;

    如果数据类需要无参构造函数,则所有属性必须有默认值:
    data class Student(val name: String = "", val age: Int = 0)

总结

文章到此结束,kotlin在很多方面的确比java简洁,没有开始使用kotlin的小伙伴可以慢慢尝试着开始写小demo,喜欢的朋友可以动动小手点点赞哦!

以上纯属于个人平时工作和学习的一些总结分享,如果有什么错误欢迎随时指出,大家可以讨论一起进步。

上一篇下一篇

猜你喜欢

热点阅读