美文网首页
Kotlin系列——变量,数据类

Kotlin系列——变量,数据类

作者: 李晓通 | 来源:发表于2017-12-12 16:58 被阅读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,喜欢的朋友可以动动小手点点赞哦!

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

    相关文章

      网友评论

          本文标题:Kotlin系列——变量,数据类

          本文链接:https://www.haomeiwen.com/subject/uduiixtx.html