Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.java.programmer > #17848 > unrolled thread

Re: hashCode

Started by"Lew" <lew@1:261/38.remove-odu-this>
First post2012-08-13 19:38 +0000
Last post2012-08-13 19:38 +0000
Articles 1 — 1 participant

Back to article view | Back to comp.lang.java.programmer


Contents

  Re: hashCode "Lew" <lew@1:261/38.remove-odu-this> - 2012-08-13 19:38 +0000

#17848 — Re: hashCode

From"Lew" <lew@1:261/38.remove-odu-this>
Date2012-08-13 19:38 +0000
SubjectRe: hashCode
Message-ID<50294F02.56796.calajapr@time.synchro.net>
  To: =?UTF-8?B?QXJuZSBWYWpow7hq?=
From: "Lew" <lew@1:261/38.remove-nlb-this>

  To: =?UTF-8?B?QXJuZSBWYWpow7hq?=
From: "Lew" <lew@1:261/38.remove-m2z-this>

  To: =?UTF-8?B?QXJuZSBWYWpow7hq?=
From: Lew <noone@lewscanon.com>

Arne Vajh-,j wrote:
> The original questions were:
>
> #Is it always technically correct to override the hashCode function #like so:
> #
> #    @Override
> #    public int hashCode() {
> #        return 1;
> #    }
>
> For which the answer is YES. Per documentation.
>
> But with really poor performance in many relevant cases.
>
> #Would it be potentially better if that was Object's implementation?
>
> Which was clarified to:
>
> #Better in the sense that you would never HAVE to override hashCode.
>
> For which the answer is also YES. Per the previous.

No, that's not true. Value-equality maps, for example, would not work if you 
didn't override 'hashCode()' in the key type to match value equality on the 
keys.

> But with the same performance note. And a big sigh because it
> seems to want to broaden bad performance from a single class
> to the entire programming style (multiple classes).

Overriding 'hashCode()' is done for functional reasons, not performance 
reasons. If you fail to override the method, you'll get incorrect behavior, for 
example failing to find a collection member that is actually present.

--
Lew
Honi soit qui mal y pense.
http://upload.wikimedia.org/wikipedia/commons/c/cf/Friz.jpg

-+- BBBS/Li6 v4.10 Dada-1
 + Origin: Prism bbs (1:261/38)
-+- Synchronet 3.16a-Win32 NewsLink 1.98
Time Warp of the Future BBS - telnet://time.synchro.net:24

-+- BBBS/Li6 v4.10 Dada-1
 + Origin: Prism bbs (1:261/38)
-+- Synchronet 3.16a-Win32 NewsLink 1.98
Time Warp of the Future BBS - telnet://time.synchro.net:24

--- BBBS/Li6 v4.10 Dada-1
 * Origin: Prism bbs (1:261/38)
--- Synchronet 3.16a-Win32 NewsLink 1.98
Time Warp of the Future BBS - telnet://time.synchro.net:24

[toc] | [standalone]


Back to top | Article view | comp.lang.java.programmer


csiph-web