现如今Kotlin用于开发安卓项目的比重越来越多,而学习Kotlin也自然是重中之重了,所以作为刚开始学习的一员,我也会开始将我所学总结成“从Java到Kotlin系列”,为什么会是这个标题,因为也顺势想把Java给复习一遍,通过比较两者,从而达到温故知新的效果,话不多说,进入主题。
Java的数据类型分两种:1)基本数据类型 2)引用数据类型
一、基本数据类型
(1) 整型,计算机只认0和1二进制,所以平时看到的数字是10进制,是要转二进制的
1) byte:1字节,八位,2的八次方个数值,但是一个整数有分正数和负数,所以取第一位作为正负类型,则剩下的七位才是数值,所以取值范围是-2的7次方到2的7次方。
2) short:2字节,十六位,2的16次方个数值,同上,分正负数,所以取值范围是-2的15次方到2的15次方。
3) int:4字节,32位,同上,就不分析了
4) long:8字节,64位,同上。
(2) 浮点型
1) float:32位,第一位是正负,后9位是小数点前面数,剩下位数则表示小数点后面数。
2) double:64位,同上。
(3) 字符型,char,16位,单引号扩住:‘a’,正如上文提到,计算机只认0和1二进制,所以指定码表,规定字符对应二进制下的数,然后为了我们人类方便研究,再将这些二进制数转为10进制数,所以有ASCAII,Unicode等码表:
比如 a--------00000001--------97
红------00000000 00000001 -------100,中文字博大精深,很多字,仅仅用2的8次方来表示是不够的,所以要用2的16次方来表示,所以char是16位大小。
(4) 布尔型,值是true或false,所以大小是1个比特位。
二、引用数据类型
对象,类(抽象类),接口,枚举,注解
三、常量与变量
(1) 常量
常量是一个值,在程序运行中不会改变,比如1、‘a’、3.13等,也就是说基本数据类型都是常量,既然是值,它就是存储在变量中
(2) 变量
变量是在程序运行中可以改变的,它是一个存储空间,存储值,也就是存储常量,当然可以存储引用,存储值时是只能存储一个值。这里有一点需要注意的是,变量可以设置成不变的(也就是常量),就是用final修饰。