Mercurial > jhg
comparison src/com/tmate/hgkit/ll/Nodeid.java @ 46:4022c34a4804
Better hashCode impl
| author | Artem Tikhomirov <tikhomirov.artem@gmail.com> |
|---|---|
| date | Fri, 14 Jan 2011 04:56:53 +0100 |
| parents | 858d1b2458cb |
| children |
comparison
equal
deleted
inserted
replaced
| 45:70dafe20931d | 46:4022c34a4804 |
|---|---|
| 35 this.binaryData = shallClone ? binaryRepresentation.clone() : binaryRepresentation; | 35 this.binaryData = shallClone ? binaryRepresentation.clone() : binaryRepresentation; |
| 36 } | 36 } |
| 37 | 37 |
| 38 @Override | 38 @Override |
| 39 public int hashCode() { | 39 public int hashCode() { |
| 40 // TODO consider own impl, especially if byte[] get replaced with 5 ints | 40 // digest (part thereof) seems to be nice candidate for the hashCode |
| 41 return Arrays.hashCode(binaryData); | 41 byte[] b = binaryData; |
| 42 return b[0] << 24 | (b[1] & 0xFF) << 16 | (b[2] & 0xFF) << 8 | (b[3] & 0xFF); | |
| 42 } | 43 } |
| 43 | 44 |
| 44 @Override | 45 @Override |
| 45 public boolean equals(Object o) { | 46 public boolean equals(Object o) { |
| 46 if (o instanceof Nodeid) { | 47 if (o instanceof Nodeid) { |
