Java 基础数据类型 、 == 、 equals
在编程中,会经常的遇到数值的对比,现在我们来介绍一下Java中的数值对比。
基础数据类型
首先我们来看一下图:
常见基础数据类型字节数:
类型 | 字节 |
---|---|
byte | 1 |
short | 2 |
int | 4 |
long | 8 |
char(UTF-16) | 2 |
float | 4 |
double | 8 |
可以发现,Java中有原生数据类型以及引用类型。
注意,enum也是一种reference类型,但是枚举值是固定地址的对象。
== 和 equals
原生类型
对于原生类型,它们只能通过 == 操作符来确定数值是否相等。
引用类型
而对于引用类型,如果采用 == 比较,则会比较引用的内存地址是否一致,而通过equals才会真正的对比内容是否一致。如:
String a = "CCC";String b = "CCC";System.out.println(a == b); //falseSystem.out.println(a.equals(b));//true
注意,在Java中,枚举类型(enum)也是一种引用类型,但是它们的对象是唯一确定的,所以可以通过 == 来对比内存是否一致来获取对象内容是否一致。