一. Java中的数据类型
变量就是申请内存来存储值。也就是说,当创建变量的时候,需要在内存中申请空间。
内存管理系统根据变量的类型为变量分配存储空间,分配的空间只能用来储存该类型数据。 因此,通过定义不同类型的变量,可以在内存中储存整数、小数或者字符。
Java的两大数据类型:
1. 内置数据类型(基本数据类型)
①. 六种数字类型( byte, short, int, long, float, double) + void
8 16 32 64 32 64 位
②. 一种字符类型 char
16位Unicode字符
③. 一种布尔型 boolean
1位
2. 关于Integer
对于两个非new生成的Integer对象,进行比较时,如果两个变量的值在区间
-128到127之间,则比较结果为true,如果两个变量的值不在此区间,则比较结果为false
Integer i = 100;
Integer j = 100;
System.out.print(i == j); //true
Integer i = 128;
Integer j = 128;
System.out.print(i == j); //false
java在编译Integer i = 100 ;时,会翻译成为Integer i = Integer.valueOf(100)。而java API中对Integer类型的valueOf的定义如下,对于-128到127之间的数,会进行缓存,Integer i = 127时,会将127进行缓存,下次再写Integer j = 127时,就会直接从缓存中取,就不会new了。
public static Integer valueOf(int i){
assert IntegerCache.high >= 127;
if (i >= IntegerCache.low && i <= IntegerCache.high){
return IntegerCache.cache[i + (-IntegerCache.low)];
}
return new Integer(i);
}
引用数据类型
引用类型变量由类的构造函数创建,可以使用它们访问所引用的对象。这些变量在声明时被指定为一个特定的类型。变量一旦声明后,类型就不能被改变了。
对象、数组都是引用数据类型,所有引用类型的默认值都是null。
基本数据类型只能按值传递,而封装类按引用传递。
Void无返回值类型,作为伪类型对应类的对象,也被认为是 基本数据类型
原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/198083.html