源码地址:https://github.com/cn-ljb/KotlinBlogs
基本类型与运算符
本章主要学习Kotlin为我们提供好的基本类型,以及它们之间的运算操作(主要讲解与Java不同的地方)
基本类型
类似Java中基本数据类型,Kotlin对Java中8种基本数据类型都做了对应的封装类,我们看看哪些不同部分
1、数值类型
进制:不支持8进制
Kotlin官网中说提供了6种数值类的基本类型
类型 位宽
Double 64
Float 32
Long 64
Int 32
Short 16
Byte 8
!!!What?
Char既然不是数值类型?Char不是可以通过ASCII码直接转换成数值,然后进行运算吗?
是的,Char在Kotlin中不能直接当作数值使用
2、字符类型
//java代码
char c = 'a';
System.out.println(c == 97);
也就是说上面的Java代码,在Kotlin里是会报错的,Why?
查看官方这一章节时,并没有看到详细的解释这个问题
那么如果我就是想进行数值判断操作呢,那你必须手动调用toInt()方法才行
//kotlin
val c: Char = 'a'
println(c.toInt() == 97)
那Kotlin中能否直接使用Char类型直接进行运算,很神奇,他既然能…
只是得到的结果类型与Java不同:
System.out.println(c + 1); //java 返回 98
println(c + 1) //kotlin 返回 b
- java中 c+1 返回的是int类型,因为int(32位)大于char(16位),所以精度由小转为大,最终为int型。
- Kotlin中 Char类型由于不是直接当数值用,所以最后返回依旧是char型(…尼玛,我都不知道怎么解释,望高手赐教)。
3、布尔类型
跟Java一样
4、类型推导
Kotlin中对于定义的变量,如果能通过初始化的字面值推断出它的类型,那么定义变量时,可以省