如题:C# 判断一个List是否包含在另一个List当中
定义两个list
List<int> c = new List<int>();
List<int> d = new List<int>();
c.Add(1);
c.Add(2);
d.Add(1);
d.Add(2);
d.Add(3);
现在判断d中是否包含c:
if (c.All(t => d.Any(b => b==t)))
{
//包含
}else
{
//不包含
}
如果list中存放的是对象,可以这样:
定义两个list:
public class Model
{
public int id { get; set; }
public int age { get; set; }
public Model(int id,int age)
{
this.id = id;
this.age = age;
}
}
List<Model> a = new List<Model>();
a.Add(new Model(1,2));
a.Add(new Model(2, 3));
a.Add(new Model(3, 4));
List<Model> b1 = new List<Model>();
b1.Add(new Model(1, 2));
b1.Add(new Model(2, 3));
b1.Add(new Model(3, 4));
b1.Add(new Model(1, 2));
if (a.All(t => b1.Any(b => b.age == t.age && b.id == t.id)))
{
//包含
}else
{
//不包含
}
在这里比较了b.age == t.age && b.id == t.id,当然需要比较什么自己决定就好。。。