understand equal and gethashcode
2024-08-28 12:19:10
Supposed we have a class below
public class TestHash
{
public int x;
int y;
public TestHash(int x, int y)
{
this.x = x;
this.y = y;
}
public override int GetHashCode()
{
Console.WriteLine("判断hashcode");
return x + y;
}
public override bool Equals(object obj)
{
Console.WriteLine("判断equals");
return base.Equals(obj);
}
public override string ToString()
{
return x.ToString() + y.ToString();
}
}
Hashtable ht = new Hashtable();
TestHash cc = new TestHash(2, 3);
TestHash cc2 = new TestHash(1, 4);
TestHash cc3 = new TestHash(3, 3);
ht.Add(cc, "test1");
ht.Add(cc2, "test2");
ht.Add(cc3, "test3"); Console.WriteLine("Begin print....");
foreach (TestHash im in ht.Keys)
{
Console.WriteLine(im.ToString() + " ----- " + ht[im]);
}
Console.Read();
See also:
http://msdn.microsoft.com/en-us/library/ms173147(v=vs.80).aspx
http://msdn.microsoft.com/zh-cn/library/system.object.gethashcode(v=vs.110).aspx
最新文章
- Lind.DDD.LindMQ的一些想法
- Extjs.Button 按钮
- 求子串-KPM模式匹配-NFA/DFA
- HA简介以及HBase简介
- 18位身份证验证--java实现,正则表达式
- 【axc】关于duplicate symbols for architecture x86_64错误的第三种可能及其解决办法
- 冲刺阶段day3
- spring集成环境下的axis webservice的发布,调试
- 实现压缩access(*.mdb)数据库的方法
- Vagrant 快速入门
- 2013 ACM区域赛长沙 C Collision HDU 4793
- 2017-5-29 Excel VBA 小游戏
- year:2017 month:08 day:04
- 如何在mysql客户端即mysql提示符下执行操作系统命令
- Java JDK 获取MongoDB中的所有账户
- 设计模式笔记:开闭原则(OCP,The Open-Closed Principle)
- spring中BeanFactory和FactoryBean的区别
- 解决Maven项目总是回跳到jdk1.5的情况的方法
- 性能测试yslow
- 学习excel的使用技巧三快捷键和思路