转载

Kotlin 第一讲:数据类型

内容简介:Kotlin 系列第一讲——数据类型

boolean 类型

Number 类型

可定义的类型

类型 字节长度
Double 64
Float 32
Long 64
Int 32
Short 16
Byte 8

如何定义

Kotlin 中存在一个特点, Float 和 Double有一个静态变量NaN(不是一个数的数)

输出结果:

数字类型做比较

kotlin中 ==相当于调用 equals 方法。在做大小比较时候和 java 不同 kotlin 具有严格的校验。不同的数据类型是无法作比较的。(在编译时期就会报错,包括赋值)

类型转换

toByte() 

toShort() 

toInt()

toLong()

toFloat() 

toDouble() 

toChar()

位运算

Kotlin 不在像 java 使用 << >> | & 操作符来进行位运算,而是提供了对应的函数.

运算符 对比java
shl 有符号左移( java 的  <<
shr 有符号右移( java 的  >>
ushr 有符号右移( java 的  >>>
and 位与( java 的  &
or 位或( java 的`
xor 位异或( java 的  ^
inv 位非( java 的  ~

让我们来巧妙的复习下 kotlin 中的位运算:

区间 Range

Kotlin特殊的类型,和数学上的区间概念属于同一概念

定义闭区间

半开区间

Char

和 java 的一样,占2个字节(没啥好说的)。

字符串

Kotlin 相比较 java 字符串,变动更为的强大。 支持了更多的方法和定义类型。

直接索引访问字符

字符串模板

其实很多语言都有这个功能。 在 java 的世界中通过 +拼接字符串的形式,比较复杂丶难用丶并且易出错。

kotlin 支持字符串模板的功能(其他语言玩烂的功能),只需要通过 $符合编写表达式。

如: 拼接一个字段的值: $XXX字段名,拼接运算表达式返回值: ${表达式}

更夸张的字符串

当我们要输出,一个有格式的模板字符串。 使用 /n 简直是噩梦。 Kotlin 为我们考虑了这点,只需这样定义: """XXXX内容"""

总结

相比较 java 数据类型区分基本与引用,而kotlin给我的感觉就是已经不存基本数据类型的概念。所有的类型全部封装成了类,并且自动拆装箱。这也是所有类型赋值必须类型相同才可以赋值。而 java 在基本数据类型赋值上,处于睁一只眼,闭一只眼。

原文  https://mp.weixin.qq.com/s/JD31w5AJz2Ma9Xi5OA5e7Q
正文到此结束
Loading...