public enum MyEnum
{
A,
Ab,
Abc,
Abcd,
Abcde
}
使用 LINQ,我想从 MyEnum 中提取一个列表,该列表包含 MyEnum 的所有项目,但项目 Ab 和 Abc 除外。
var doNotUse = new[] { MyEnum.Ab, MyEnum.Abc };
var enums = Enum.GetValues(typeof(MyEnum)).Cast<MyEnum>()
.Where(me => !doNotUse.Contains(me))
.ToList();
var list = Enum.GetNames(typeof(MyEnum))
.Where(r=> r != "Abc" && r != "Ab")
.ToList();
对于输出:
foreach(var item in list)
Console.WriteLine(item);
输出:
A
Abcd
Abcde
你不需要 linq :
public void test()
{
List<MyEnum> list = new List<MyEnum>();
foreach (MyEnum item in Enum.GetValues(typeof(MyEnum)))
{
list.Add(item);
}
}