Path: csiph.com!v102.xanadu-bbs.net!xanadu-bbs.net!news.glorb.com!news-in-01.newsfeed.easynews.com!easynews.com!easynews!news-out.news.tds.net!newsreading01.news.tds.net!53ab2750!not-for-mail From: "Lew" Subject: Re: hashCode Message-ID: <5027F2CA.56698.calajapr@time.synchro.net> X-Comment-To: =?UTF-8?B?QXJuZSBWYWpow7hq?= Newsgroups: comp.lang.java.programmer In-Reply-To: <5027F2C9.56692.calajapr@time.synchro.net> References: <5027F2C9.56692.calajapr@time.synchro.net> X-FTN-AREA: COMP.LANG.JAVA.PROGRAMMER X-FTN-MSGID: 1:261/38 38fa2216 X-FTN-REPLY: 1:261/38 76e35f4a Content-Type: text/plain; charset=IBM437 Content-Transfer-Encoding: 8bit X-Gateway: time.synchro.net [Synchronet 3.16a-Win32 NewsLink 1.98] Lines: 40 Date: Sun, 12 Aug 2012 18:58:19 GMT NNTP-Posting-Host: 69.21.70.65 X-Complaints-To: news@tds.net X-Trace: newsreading01.news.tds.net 1344797899 69.21.70.65 (Sun, 12 Aug 2012 13:58:19 CDT) NNTP-Posting-Date: Sun, 12 Aug 2012 13:58:19 CDT Organization: tds.net X-Received-Bytes: 2240 Xref: csiph.com comp.lang.java.programmer:17753 To: =?UTF-8?B?QXJuZSBWYWpow7hq?= From: Lew Arne Vajh-,j wrote: > Lew wrote: >> Jan Burse wrote: >>> Maybe it would make sense to spell out what the contract >>> for hashCode() is. Well the contract is simply, the >>> following invariant should hold: >>> >>> /* invariant that should hold */ >>> if a.equals(b) then a.hashCode()==b.hashCode() >> >> True, but if you read the specification for 'hashCode()' fully, that is >> not the entire contract, only the compiler-enforceable part of it. >> >> The entire specification requires that as much as feasible, the 'Object' >> implementation distinguish distinct instances, and that the method >> generally support 'HashMap', which promises O(1) 'get()' and 'put()' >> with a "proper" (i.e., compliant) 'hashCode()'. > > Two wrong statements. > > It says that the method is defined to support HashMap > > And HashMap does not guarantee O(1) with a correct > hashCode - it guarantee that for one that return > good distributed values. Granted. -- 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