Ilist<T> 内容相等判断
请问各位Object有个Equal
方法可以重载后,对自己定义的类,进行内容比较
但Ilist<T> 有没有什么方法可以直接返回其中所有的元素的内容是否相等
而不用对其中所有的元素都遍历一遍,调用其中的Equal方法呢 --------------------编程问答-------------------- 如果不遍历,怎么知道?
望高手出现 --------------------编程问答-------------------- 可用LIST,ILIST属于接口范畴,应该实现不了! --------------------编程问答-------------------- 高手的问题,关注。。。 --------------------编程问答-------------------- 继承Icompare<T> --------------------编程问答--------------------
using System;--------------------编程问答--------------------
using System.Linq;
using System.Collections.Generic;
class MyClass
{
static bool AllEquals<T>(List<T> list)
{
return list.Distinct().Count() == 1 ? true : false;
}
static void Main(string[] args)
{
List<int> list1 = new List<int> { 1, 2, 3, 4, 3, 2, 1 };
Console.WriteLine(AllEquals(list1));
List<int> list2 = new List<int> { 2, 2, 2, 2, 2, 2, 2 };
Console.WriteLine(AllEquals(list2));
Console.ReadKey();
}
}
??
你干嘛关心List里的数据是不是存在相同的???
你要想存不同的数据就用Dictionary,绝对不会重复, --------------------编程问答-------------------- System.Linq是3.0的? --------------------编程问答-------------------- 回复 6楼
我是要判断, 两个List的实例的内容是否完全相同
并且,其中元素的次序也相同
如:
List<item> A = new List<item>();
List<item> B = new List<item>();
item a = new item();
item b = new item();
item c = new item();
A.Add(a);
A.Add(b);
A.Add(c);
B.Add(a);
B.Add(b);
B.Add(c);
在上述的情况,我就认为,这两者不同 --------------------编程问答-------------------- 我在实际中解决这种问题的方法是将需要比较的List进行XML格式的序列化,然后比较序列化后的内容是否相等,但前提是你的List<item>中的item类型是可以被序列化的。 --------------------编程问答--------------------
应该认为两者相同才是。 --------------------编程问答-------------------- 回复 10楼
实际的业务需要 认为这两者是不同的 --------------------编程问答-------------------- <a href="http://www.niuren.com">牛人论坛</a> --------------------编程问答--------------------
8楼的代码?你这业务需要显然是火星人的...
补充:.NET技术 , C#