[jboss-cvs] JBossCache/src-50/org/jboss/cache/pojo/collection ...
Ben Wang
bwang at jboss.com
Sun Sep 17 03:42:18 EDT 2006
User: bwang
Date: 06/09/17 03:42:18
Modified: src-50/org/jboss/cache/pojo/collection
CachedListAbstract.java
Log:
JIRA JBCACHE-765 Collection equals
Revision Changes Path
1.5 +9 -9 JBossCache/src-50/org/jboss/cache/pojo/collection/CachedListAbstract.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: CachedListAbstract.java
===================================================================
RCS file: /cvsroot/jboss/JBossCache/src-50/org/jboss/cache/pojo/collection/CachedListAbstract.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- CachedListAbstract.java 2 Aug 2006 15:40:24 -0000 1.4
+++ CachedListAbstract.java 17 Sep 2006 07:42:18 -0000 1.5
@@ -128,11 +128,10 @@
public int hashCode()
{
- int result = 0;
- for (int i = 0; i < size(); i++)
- {
+ int result = 1;
+ for (int i =0; i < size(); i++) {
Object o = get(i);
- result += (o == null ? 0 : o.hashCode());
+ result = 31 * result + (o == null ? 0 : o.hashCode());
}
return result;
}
@@ -141,15 +140,16 @@
{
if (object == this)
return true;
- if (!(object instanceof List))
+ if (object == null || !(object instanceof List))
return false;
List list = (List) object;
if (size() != list.size())
return false;
- for (int i = 0; i < list.size(); i++)
- {
- Object value = list.get(i);
- if (!contains(value))
+ for (int i=0; i < list.size(); i++) {
+ Object value1 = get(i);
+ Object value2 = list.get(i);
+ if( (value1 == null && value2 != null) ||
+ (value1 != null && !(value1.equals(value2))))
return false;
}
return true;
More information about the jboss-cvs-commits
mailing list