.net中如何比较list是否相等?
2个回答
展开全部
如果你的list中存放的是基本类型(自定义的也可以,就是复杂一点):
比如:list<int> lsa,List<int>lsb;//怎样比较相等呢
bool eq=lsa.SequenceEqual(lsb);//就OK啦
如果是自定义的, 你要写个实现IEqualityComparer<T>接口的比较方法就可以了
比如:list<int> lsa,List<int>lsb;//怎样比较相等呢
bool eq=lsa.SequenceEqual(lsb);//就OK啦
如果是自定义的, 你要写个实现IEqualityComparer<T>接口的比较方法就可以了
追问
如何判断定义的类型是否相同呢?
追答
你要写个实现IEqualityComparer接口的比较方法就可以了
比如:
class BoxEqualityComparer : IEqualityComparer
{
public bool Equals(Box b1, Box b2)
{
if (b1.Height == b2.Height & b1.Length == b2.Length
& b1.Width == b2.Width)
{
return true;
}
else
{
return false;
}
}
public int GetHashCode(Box bx)
{
int hCode = bx.Height ^ bx.Length ^ bx.Width;
return hCode.GetHashCode();
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询