我试图检查一个类中是否有2个变量,或者两个类是否相等,但是我的消息框仍然没有显示。
Maptiles:这是一个包含类的列表,每个类都有变量:ID,X和Y
Mapindex:这是一个循环遍历maptiles列表中所有类的变量。
Mapnumber:此变量从1开始,我用它来检查所有类
这是代码:
for (int mapIndex = 0; mapIndex < MapTiles.Count; mapIndex++)
{
if (mapIndex + mapNumber >= MapTiles.Count)
{
break;
}
if(MapTiles[mapIndex].Equals(MapTiles[mapIndex+mapNumber]))
{
System.Windows.Forms.MessageBox.Show("REMOVE");
}
mapNumber++;
}
所以问题是,如何使其显示,或者如何检查两个类是否相同?
谢谢
最佳答案
您的类至少需要重写Object.Equals()才能进行比较。实施IEquatable也是一个好主意。
更多信息:Guidelines for Overloading Equals() and Operator == (C# Programming Guide)