- String str="abc";
- String str1=new String();
- str1="abc";
- System.out.println(str==str1); //是true,这里比较两者在内存中指向同一地址
- System.out.println(str.equals(str1)); //是true,String类覆写了Object类中的equals方法,比较的不是地址值,而是字符串的内容
-
- int[] arr=new int[]{5,6,8,3,4};
- int[] arr1={5,6,8,3,4};
- System.out.println(arr==arr1); //是false,因为这两个引用型变量指向了不同的对象
- System.out.println(arr.equals(arr1)); //是false,数组是一个Object了的对象,继承了Object类中的equals方法,比较的是地址值
复制代码 |