【问题标题】:Getting the count of an IEnumerable list?获取 IEnumerable 列表的计数?
【发布时间】:2017-08-16 08:12:55
【问题描述】:

在我的代码中,我试图通过控制台命令输出电影列表中的项目数量,但我不完全确定如何从列表中获取项目数量。该列表最初是作为私有列表创建的,但我有一个属性使其成为 IEnumerable 列表,如下所示。

public IEnumerable<Movie> Movies
        {
            get
            {
                return this.movies;
            }
        }

我如何才能计算该属性提供的列表中有多少项目?

【问题讨论】:

标签: c#


【解决方案1】:

调用Count方法有什么问题:

Movies.Count();

您将需要System.Linq 命名空间。

【讨论】:

  • 我没有那个命名空间,所以我看不到这个选项。谢谢老兄!
【解决方案2】:

如果您的集合实际上一个列表,您可以将其转换回来,而不是使用IEnumerable 提供的Count() 方法。不确定List.Count() 是否会在内部调用List.Count - 但我希望它会。无论如何,这是演员的代码:

public IEnumerable<Movie> Movies
{
    get
    {
        return this.movies;
    }
}

var theList = instance.Movies as IList<Movie>();
if (theList != null) 
    count = theList.Count;
else 
    count = instance.Movies.Count();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-09-06
    • 1970-01-01
    • 2019-01-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多