java基础知识(未完待续)
1. 数据类型
1. Java的基本数据类型
Java有8大基本数据类型:byte(8位),short、char(16位),int、float(16位),long、double(64位),boolean(布尔类型)。
Java中整数的默认类型是int,小数的默认类型是double。float a=3.12是错误的,因为小数3.12的数据类型默认是double,因此要改为float a=(float)3.12或者float a=3.12F,前者是一种强制转换,强制转换会损失精度,产生误差,并且容易超出取值范围,后者在3.12后面加了个F,这是在告诉编译器这是个float类型的数。
图片来源于网络
上图展示了Java基本数据类型所占字节以及相互转换的过程。
2. Java中String类的基本特点
(1)字符串的实例化
String有两种方法进行实例化,一是直接赋值,二是采样构造方法。
直接赋值如下图所示:
图片来源于网络
采样直接赋值实例化时,实例化对象会自动保存到对象池中。当下次采用直接赋值实例化对象时,若对象池中有此内容,则直接引用。如果没有,则开辟新的对象,并自动保存到对象池中。
采样构造方法如下图所示:
图片来源于网络
String中两种实例化方法的区别:
[1] 直接赋值开辟一个堆内存空间,实例化对象会自动保存到对象池中供下次使用;
[2] 采用构造方法会开辟两个堆内存空间,其中一个会变成垃圾,并对字符串共享造成影响,使用intern方法可以手工入池。
(2)字符串修改
字符串常量不可改变,我们常说的字符串变更,是字符串对象的改变,如下图所示:
图片来源于网络
3. 装箱和拆箱
装箱是把值类型变成引用类型;拆箱是把引用类型变成值类型。
例如:
int a=5;
String b=a; 装箱
int c=int.Parse(b); 拆箱
Reference:
不当之处,敬请批评指正。