Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.java.programmer > #17795
| From | "Lew" <lew@1:261/38.remove-nlb-this> |
|---|---|
| Subject | Re: hashCode |
| Message-ID | <502943B1.56743.calajapr@time.synchro.net> (permalink) |
| Newsgroups | comp.lang.java.programmer |
| Date | 2012-08-13 18:36 +0000 |
| Organization | tds.net |
To: Jan Burse From: "Lew" <lew@1:261/38.remove-m2z-this> To: Jan Burse From: Lew <noone@lewscanon.com> 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()'. -- 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
Back to comp.lang.java.programmer | Previous | Next — Next in thread | Find similar | Unroll thread
Re: hashCode "Lew" <lew@1:261/38.remove-nlb-this> - 2012-08-13 18:36 +0000
Re: hashCode "Lew" <lew@1:261/38.remove-nlb-this> - 2012-08-13 18:36 +0000
Re: hashCode "Arne Vajhøj" <������
høj@1:261/38.remove-nlb-this> - 2012-08-13 18:36 +0000
Re: hashCode "Lew" <lew@1:261/38.remove-nlb-this> - 2012-08-13 18:36 +0000
csiph-web