生命之灯因热情而点燃,生命之舟因拼搏而前行。

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的区别了。