【问题标题】:How to create an array from a collection如何从集合中创建数组
【发布时间】:2022-01-20 12:47:45
【问题描述】:

一个集合被传递给函数参数。我需要从中取一个元素。我该怎么做?

private PaperProduct midEl(ICollection<Type> Coll)
        {
            int index = (Coll.Count() / 2)+1;
            Type T = Coll.GetType();
            Coll.CopyTo(T[], 10);
        }

【问题讨论】:

  • 不清楚你在问什么。要从集合创建数组,可以使用 Linq:coll.ToArray()。要访问 ICollection&lt;T&gt; 中的元素,可以使用 ElementAt(index)
  • var result = Coll.ElementAt(Coll.Count / 2 + 1);
  • 为什么要创建数组?如果集合为空或为空怎么办?为什么是 + 1?

标签: c# collections


【解决方案1】:

您可以将集合转换为数组并获取索引。

var middle = Coll.ToArray()[index];

或更简单且无需转换:

var middle = Coll.ElementAt(index);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-02
    • 1970-01-01
    • 1970-01-01
    • 2022-11-17
    • 2021-01-28
    • 2019-02-19
    相关资源
    最近更新 更多