自己做这个并不是什么大不了的事,但我很好奇C#是否在任何地方给我这个:
public static IEnumerable<bool> AllBools {
get {
yield return false;
yield return true;
}
}
答案 0 :(得分:0)
这里有代码,比你想要的有点笨拙,但它有效:
public static IEnumerable<bool> BoolValues {
get {
return new bool[]{true, false};
}
}
编辑:如果你想要代码枚举枚举的所有值(这将是更有用的,imo),这里也是代码:
public enum TrueOrFalse
{
True,
False
}
public static IEnumerable<TrueOrFalse> BoolValues {
get {
List<TrueOrFalse> allValues = new List<TrueOrFalse>();
foreach (var value in Enum.GetValues(typeof(TrueOrFalse))){
allValues.Add((TrueOrFalse)(value));
}
return allValues.AsEnumerable();
}
}
更简单,如此处所示(How to get an array of all enum values in C#?):
List<TrueOrFalse> valuesAsList = Enum.GetValues(typeof(TrueOrFalse)).Cast<TrueOrFalse>().ToList();