【问题标题】:enumerating over all bools枚举所有书籍
【发布时间】:2016-04-12 07:53:51
【问题描述】:

我自己做这个没什么大不了的,但我很好奇 C# 是否在任何地方给我这个:

public static IEnumerable<bool> AllBools {
  get {
    yield return false;
    yield return true;
  }
}

【问题讨论】:

  • 你能举出一个这样的案例吗?
  • BooleanConverter.GetStandardValues()。不需要钉子的锤子。

标签: c# boolean ienumerable


【解决方案1】:

这里是代码,比你想要的有点笨拙,但它可以工作:

    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();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-03-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-18
    • 2015-08-21
    相关资源
    最近更新 更多