==和equal()都是用来判断两个变量是否相等的。(1)如果两个变量是基本类型变量,且都是数值型的(不一定数据类型相同),只要是值相同,将返回true;(2)如果两个变量是引用型变量,只有它们指向同一个对象时,==才返回true;(3)equal比较的是两个字符串,只要两个字符串的字符对应相等,就...
分类:
编程语言 时间:
2015-03-05 23:37:39
阅读次数:
176
equals()反映的是对象或变量具体的值,即两个对象里面包含的值--可能是对象的引用,也可能是值类型的值。而hashCode()是对象或变量通过哈希算法计算出的哈希值。之所以有hashCode方法,是因为在批量的对象比较中,hashCode要比equals来得快,很多集合都用到了hashCode,...
分类:
编程语言 时间:
2015-02-08 21:52:24
阅读次数:
1761
String的比较有两种==和equal()方法:
==:比较的是在堆内存中地址
equal():比较的是值
String s1="hello";
String s2="hello";
String s3=new String("hello");
s1==s2;//结果为true
s1==s3;//结果为false
s1.equal(s2);//结果为true
s1.equal(s3);/...
分类:
其他好文 时间:
2014-07-09 12:43:16
阅读次数:
240
一般认为:==比较的是基础数据的值或者是对象的引用地址equal()比较的是对象的内容其实:==和equal()都是比较的引用地址,其实是栈内存中变量(包括基本数据类型的变量和对象变量)的值equals()方法在object类中定义如下:public boolean equals(Object ob...
分类:
编程语言 时间:
2014-06-28 17:11:04
阅读次数:
265
String s1 = "abcd";String s2 = "cdfe";s1 == s2; //
比较s1和s2这2个对象的地址,如果一样,则为true,否则为falses1.equal(s2); //比较s1和s2的内容,如果相同则为true
分类:
编程语言 时间:
2014-05-26 18:24:17
阅读次数:
222