生命之灯因热情而点燃,生命之舟因拼搏而前行。
java中的数据类型
两大数据类型
首先要对java的数据类型有了解。
基本数据类型
整型 int |short | long | byte
浮点型 |float |double
字符型|char
布尔型|boolean
引用类型
数组
类
接口
“=”与equals的区别
平时我们在学习java语言时,经常遇到“=”与equals ,今天就把这个彻底弄清楚。
- 基本数据类型在进行比较时用(=)时,比的是他们的值
- 引用类型在进行比较时用(=)时,比较的是他们在内存中的地址值(除非是同一个new出来的对象,他们的比较的结果为true,否则比较结果为false。因为每new一次,都会重新开辟堆内存空间)
equals
java中的equals是这样写的:
public boolean equals(Object anObject) {
if (this == anObject) {
return true;
这个方法默认的比较也是地址值,但是这样比就意义不大。所以,在其他的库中equals方法都被重写了,一般都是比较的是具体的值是否相等,而不是地址值。
具体的看一个例子:
String中的equals方法
public static void main(String[] args) {
String s1="hello";
String s3 = new String("hello");
String s2=s3;
System.out.println(s1==s2);//false
System.out.println(s1==s3);//false
System.out.println(s3==s2);//true
System.out.println(s1.equals(s2));//true
System.out.println(s1.equals(s3));//true
System.out.println(s3.equals(s2));//ture
通过代码实例应该清楚的看出“=”与equals的区别了。