分享下学习Kotlin的历程-变量/数据类型(1)

转载请注明出处:王亟亟的大牛之路

继续上一篇的内容,我们在Activity里做了简单的对象创建,变量命名/赋值,这一篇讲判断和循环。这一套姿势撸完你自己也能写个小功能了!

开篇前,先安利一下:https://github.com/ddwhan0123/Useful-Open-Source-Android (自从4月换了工作内容之后一直没有像以前那样经营,之后一段时间会补上的)


数据类型

在程式设计的类型系统中,数据类型(Data type)是用来约束数据的解释。

在具体介绍Kotlin数据额结构之前,我做了一张图。
来解释和对比,它与我们“用烂“的Java的数据类型的”差异”

分享下学习Kotlin的历程-变量/数据类型(1)_第1张图片

肉眼看来基本毫无差异,那让我们深入剖析下真的是否一致

内容来源于https://kotlinlang.org/


没有默认值的设计

Kotlin中所定义的类型没有默认值,所以不初始化的话IDE会爆红,像这样
分享下学习Kotlin的历程-变量/数据类型(1)_第2张图片

变量和常量

上次写的例子中提到了常量val却忘记解释了,这里再补充下

在Kotlin声明常量是val,变量是var

什么是常量?什么是变量?

常量是只能够在初始化的时候进行一次赋值的“变量“,变量随时都可以改变

类似于React的 const let/var之间的关系


所有东西都是对象

说数据类型之前,补充一个重要知识点:Kotlin里所有东西都是对象,就和JS里null也是对象一样

重要的是说三遍:所有东西都是对象 所有东西都是对象 所有东西都是对象


Int/Long/Short/Byte

这一家描述的是 “整数和0“(当然有正负的区别),他们本身没什么大的区别,就是值域和空间有区别而已

你打印下

Int.MAX_VALUE:Int max value = 2147483647
Long.MAX_VALUE:Long max value = 9223372036854775807

Byte和Short也差不多的姿势,只是字节数不同而已

这里写图片描述


Float/Double

和上面的整型数据类型类似,都是传统数学意义上的“小数“。区别就是Float是32位浮点数类型,Double是64位的浮点数类型。规范的赋值一般会在后面加个”F/f”,Double后面则不需要添加”D之类的”
这里写图片描述

浮点数据类型也存在最大/最小值,像这样

Float max value = 3.4028235E38
Double max value = 1.7976931348623157E308

和整型数据类型差异的是,浮点型有正负无穷大和NaN

Double.POSITIVE_INFINITY
Double.NEGATIVE_INFINITY
Double.NaN

无论是整数还是小数,其实都是数字,API提供了互相转换的一些方法,像这样

分享下学习Kotlin的历程-变量/数据类型(1)_第3张图片


Boolean

Boolean是我们最常见判断“是与非“的数据类型了,反正永远就2个值,不是”true”就是”false”,都不用考虑是不是null

运算符
分享下学习Kotlin的历程-变量/数据类型(1)_第4张图片


Char

每个字符代表一个Unicode
通常用单引号来赋值,像这样
分享下学习Kotlin的历程-变量/数据类型(1)_第5张图片

字符串,数组等“高端数据类型“将会在第二篇,给各位老爷奉上,敬请期待谢谢!

源码地址:https://github.com/ddwhan0123/KotlinAndroidDemo

你可能感兴趣的:(android资源)