程序中对于每一种数据都定义了明确的具体数据类型,在内存中分配了不同大小的内存空间。
其中包括两种数据类型,分别是基本数据类型和引用数据类型。我用下图来表示
(基本类型:是由8个关键字来声明的数据类型)
(引用类型:用一个类名来进行定义变量。一般是指除了那八种基本类型之外的其他所有类型哦)
此处我只简单阐述一下基本数据类型。
在这其中呢基本数据类型中的数值型中的整数类型中:
byte占1个字节
short占2字节
int占4字节
long占8字节
(初学了解的差不多就行,事后可以自己平时多注意了解一下)
public class demo {
/*
=10-->字面量 整数字面量默认是int
声明long类型赋值, 字面量后面加L
*/
public static void main(String[] args) {
byte a = 127;
short b = 128;
int c = 11111111;
long d = 11111111111111L;
System.out.println(Long.MAX_VALUE);
System.out.println(Long.BYTES);
//int类型
int e = 0x11;//十六进制
System.out.println(e);//17
int f = 0b11;//二进制
System.out.println(f);//3
int g = 011;//八进制
System.out.println(g);//9
}
}
以上呢就是一点示例代码,切记!整数的字面量默认是int哦,如果要声明long类型赋值,字面量后边一定要加L。
至于浮点类型,话不多说,代码附上:
public class demo2 {
//浮点类型
/*
浮点数
float 4字节
double 8字节
浮点数默认字面量是double类型
声明float类型时,需要在字面量后加f/F
两者表示的精度不同
*/
public static void main(String[] args) {
float a = 10.5f;
System.out.println(a);
double b = 10.666666666666666;
System.out.println(b);
float c = 3.14e2f;
System.out.println(c);
}
}
声明float变量的时候,要在字面量后加f,因为浮点数字面量默认的是double。
至于两者区别,那就是精度不同(可以自己在IDE上运行一下,显示的结果不同)