Skip to Main Content
C# Cookbook, 2nd Edition
book

C# Cookbook, 2nd Edition

by Jay Hilyard, Stephen Teilhet
January 2006
Intermediate to advanced content levelIntermediate to advanced
1184 pages
43h 23m
English
O'Reilly Media, Inc.
Content preview from C# Cookbook, 2nd Edition
This is the Title of the Book, eMatter Edition
Copyright © 2007 O’Reilly & Associates, Inc. All rights reserved.
Creating a Priority Queue
|
603
to create a hash value for your object. The return values from each method can either
be added or XORed together.
Once an object is in use as a key in a
Hashtable or Dictionary<T,U>, it should never
return a different value for the hash code. Originally, it was documented that hash
codes must be immutable, as the authors of
Hashtable or Dictionary<T,U> thought
that this should be dealt with by whoever writes
GetHashCode. It doesn’t take much
thought to realize that for mutable types, if you require both that the hash code never
changes and that
Equals represents the equality of the mutable objects and that if
a.Equals(b), then a.GetHashCode( ) == b.GetHashCode( ), then the only possible
implementation of GetHashCode is one that returns the same integer constant for all
values.
The
GetHashCode method is called when you are using this object as the key in a
Hashtable or Dictionary<T,U> object. Whenever your object is added to a Hashtable
or Dictionary<T,U> as a key, the GetHashCode method is called on your object to
obtain a hash code. This hash code must not change while your object is a key in the
Hashtable or Dictionary<T,U>. If it does, the Hashtable or Dictionary<T,U> will not be
able to find your object.
See Also
See the “GetHashCode Method,” “Dictionary<T,U> ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

C# Cookbook

C# Cookbook

Stephen Teilhet, Jay Hilyard
C# Cookbook

C# Cookbook

Joe Mayo
Head First C#, 4th Edition

Head First C#, 4th Edition

Andrew Stellman, Jennifer Greene

Publisher Resources

ISBN: 0596100639Supplemental ContentCatalog PageErrata