Java中数据类型分分为基本类型、引用类型两种。其中基本类型又分为四类八种,以下列图标进行说明:
类型 | 名称 | 取值范围 | 二进制位数 | 备注 | |
基本类型 | 整数型 | byte | -128至127 | 8 | byte类型占用的空间只有int类型的1/4 |
short | -32768至32767 | 16 | 一个short变量是int型变量所占空间的二分之一 | ||
int | -2147483648至-2147483647 | 32 | 整型变量默认为int类型,默认值是0 | ||
long | -9223372036854775808 至 9223372036854775807 | 64 | 用在比较大的整数系统中,默认值是0L | ||
浮点型 | float | 1.4E-45至3.4028235E38 | 32 | 科学计数123E16表示123乘以10的16次方,储存大型浮点数组的时候可节省内存空间,默认值是0.0f,不能表示精确的值,如货币 | |
double | 4.9E-324至 1.7976931348623157E308 | 64 | 浮点数的默认类型为double类型,默认值是0.0d,不能表示精确的值,如货币 | ||
字符型 | char | \u0000(0)至\uffff(65535) | 16 | 使用16位unicode字符,可以表示单个汉字。 | |
布尔型 | boolean | false与ture | 默认值是false | ||
引用类型 | object,array… | 默认null | 类的构造器生成,一旦声明后其类型不可变 |
注:1个字节占8位,8bit=1byte,1024byte=1KB,1024KB=1MB,1024MB=1GB,1024GB=1TB,1024TB=1PB
测试代码:
public class DemoDataType {
public static void main(String[] args) {
System.out.println("byte最小值="+Byte.MIN_VALUE);
System.out.println("byte最大值="+Byte.MAX_VALUE);
System.out.println("short最小值="+Short.MIN_VALUE);
System.out.println("short最大值="+Short.MAX_VALUE);
System.out.println("int最小值="+Integer.MIN_VALUE);
System.out.println("int最大值="+Integer.MAX_VALUE);
System.out.println("long最小值="+Long.MIN_VALUE);
System.out.println("long最大值="+Long.MAX_VALUE);
System.out.println("float最小值="+Float.MIN_VALUE);
System.out.println("float最大值="+Float.MAX_VALUE);
System.out.println("double最小值="+Double.MIN_VALUE);
System.out.println("double最大值="+Double.MAX_VALUE);
System.out.println("character最小值="+(int)Character.MIN_VALUE);
System.out.println("character最大值="+(int)Character.MAX_VALUE);
}
}
输出结果:
byte最小值=-128
byte最大值=127
short最小值=-32768
short最大值=32767
int最小值=-2147483648
int最大值=2147483647
long最小值=-9223372036854775808
long最大值=9223372036854775807
float最小值=1.4E-45
float最大值=3.4028235E38
double最小值=4.9E-324
double最大值=1.7976931348623157E308
character最小值=0
character最大值=65535