我试图检查一个类中是否有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)

10-08 07:40