summaryrefslogtreecommitdiffstats
path: root/graphics/java
diff options
context:
space:
mode:
authorRomain Guy <romainguy@google.com>2012-01-31 10:50:38 -0800
committerRomain Guy <romainguy@google.com>2012-01-31 10:50:38 -0800
commit74d7ca133a6db82abba5c0abe443fb001928e72c (patch)
treec58ea32710ea004664b87c14d958878d3c2f81e2 /graphics/java
parent13631f3da855f200a151e7837ed9f6b079622b58 (diff)
downloadframeworks_base-74d7ca133a6db82abba5c0abe443fb001928e72c.zip
frameworks_base-74d7ca133a6db82abba5c0abe443fb001928e72c.tar.gz
frameworks_base-74d7ca133a6db82abba5c0abe443fb001928e72c.tar.bz2
Proper equals/hashCode impls in Rect and RectF
Change-Id: Ief52d84f134018af4dfd19674de12736c056e3f8
Diffstat (limited to 'graphics/java')
-rw-r--r--graphics/java/android/graphics/Rect.java22
-rw-r--r--graphics/java/android/graphics/RectF.java18
2 files changed, 33 insertions, 7 deletions
diff --git a/graphics/java/android/graphics/Rect.java b/graphics/java/android/graphics/Rect.java
index 7830224..0ada1fb 100644
--- a/graphics/java/android/graphics/Rect.java
+++ b/graphics/java/android/graphics/Rect.java
@@ -76,13 +76,21 @@ public final class Rect implements Parcelable {
}
@Override
- public boolean equals(Object obj) {
- Rect r = (Rect) obj;
- if (r != null) {
- return left == r.left && top == r.top && right == r.right
- && bottom == r.bottom;
- }
- return false;
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+
+ Rect r = (Rect) o;
+ return left == r.left && top == r.top && right == r.right && bottom == r.bottom;
+ }
+
+ @Override
+ public int hashCode() {
+ int result = left;
+ result = 31 * result + top;
+ result = 31 * result + right;
+ result = 31 * result + bottom;
+ return result;
}
@Override
diff --git a/graphics/java/android/graphics/RectF.java b/graphics/java/android/graphics/RectF.java
index 00e9609..293dfcc 100644
--- a/graphics/java/android/graphics/RectF.java
+++ b/graphics/java/android/graphics/RectF.java
@@ -79,6 +79,24 @@ public class RectF implements Parcelable {
bottom = r.bottom;
}
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+
+ Rect r = (Rect) o;
+ return left == r.left && top == r.top && right == r.right && bottom == r.bottom;
+ }
+
+ @Override
+ public int hashCode() {
+ int result = (left != +0.0f ? Float.floatToIntBits(left) : 0);
+ result = 31 * result + (top != +0.0f ? Float.floatToIntBits(top) : 0);
+ result = 31 * result + (right != +0.0f ? Float.floatToIntBits(right) : 0);
+ result = 31 * result + (bottom != +0.0f ? Float.floatToIntBits(bottom) : 0);
+ return result;
+ }
+
public String toString() {
return "RectF(" + left + ", " + top + ", "
+ right + ", " + bottom + ")";