From 251fd03cd78ef6996d4252450bda596a5e8b11b9 Mon Sep 17 00:00:00 2001 From: Reinier Zwitserloot Date: Thu, 25 Jun 2015 00:13:12 +0200 Subject: The hashCode() method now generates a magic prime instead of 0 for the hash of null values; this reduces collisions. --- usage_examples/DataExample_post.jpage | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'usage_examples/DataExample_post.jpage') diff --git a/usage_examples/DataExample_post.jpage b/usage_examples/DataExample_post.jpage index e53e999c..bef0a0f1 100644 --- a/usage_examples/DataExample_post.jpage +++ b/usage_examples/DataExample_post.jpage @@ -62,7 +62,7 @@ public class DataExample { final int PRIME = 59; int result = 1; final long temp1 = Double.doubleToLongBits(this.getScore()); - result = (result*PRIME) + (this.getName() == null ? 0 : this.getName().hashCode()); + result = (result*PRIME) + (this.getName() == null ? 43 : this.getName().hashCode()); result = (result*PRIME) + this.getAge(); result = (result*PRIME) + (int)(temp1 ^ (temp1 >>> 32)); result = (result*PRIME) + Arrays.deepHashCode(this.getTags()); @@ -111,8 +111,8 @@ public class DataExample { @Override public int hashCode() { final int PRIME = 59; int result = 1; - result = (result*PRIME) + (this.getName() == null ? 0 : this.getName().hashCode()); - result = (result*PRIME) + (this.getValue() == null ? 0 : this.getValue().hashCode()); + result = (result*PRIME) + (this.getName() == null ? 43 : this.getName().hashCode()); + result = (result*PRIME) + (this.getValue() == null ? 43 : this.getValue().hashCode()); return result; } } -- cgit