c# - 如何获取 IEnumerable(非泛型)的第一个元素?

标签 c#

如果我有一个通用的IEnumerable<int> 。我可以简单申请ToList()ToArray()FirstOrDefault()到它。如何将这些方法应用到非泛型IEnumerable

最佳答案

您有几个选择:

  1. 如果您知道可枚举中的所有对象都属于同一类型,则可以将其转换为泛型 IEnumerable<YourType> 。在最坏的情况下,您始终可以使用 object :

    object first = enumerable.Cast<object>().First();
    
  2. 或者您可以使用枚举器,迈出一步并获取当前元素:

    IEnumerator enumerator = enumerable.GetEnumerator();
    enumerator.MoveNext();
    object first = enumerator.Current;
    

关于c# - 如何获取 IEnumerable(非泛型)的第一个元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17722783/

相关文章:

C# 日期时间选择器 -> 使用 updown & pick

c# - 带有计时器的简单应用程序正在消耗内存?

c# - 为什么没有将 native DLL 复制到输出目录

c# - 在 MSMQ 终结点上使用消息检查器记录 WCF 请求和响应

c# - 使用 c# .net 将数组插入到 sql server 和 mysql 数据库中

c# - 从 FullyName 字符串到 Type 对象

c# - 在 C# 中尝试从 ConcurrentDictionary 中删除键值对

c# - 没有用于 ASP.NET MVC 的 DI 容器的 Controller 的构造函数参数

c# - 剑道用户界面 : Selecting panelbar item by item property

c# - gridview使用时间戳更新更新 asp.net 时出错