ICollection<字符串>到字符串[]

发布于 2024-07-10 06:15:50 字数 176 浏览 7 评论 0原文

我有一个 ICollection 类型的对象。 转换为 string[] 的最佳方法是什么。

在 .NET 2 中如何做到这一点?
如何在 C# 的更高版本中更清晰地完成此操作,也许在 C# 3 中使用 LINQ?

I have a object of type ICollection<string>. What is the best way to convert to string[].

How can this be done in .NET 2?

How can this be done cleaner in later version of C#, perhaps using LINQ in C# 3?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

明媚殇 2024-07-17 06:15:51

您可以使用以下代码片段将其转换为普通数组:

string[] array = new string[collection.Count];
collection.CopyTo(array, 0);

这应该可以完成工作:)

You could use the following snippet to convert it to an ordinary array:

string[] array = new string[collection.Count];
collection.CopyTo(array, 0);

That should do the job :)

小红帽 2024-07-17 06:15:51

如果你使用的是C# 3.0和.Net Framework 3.5,你应该能够做到:

ICollection<string> col = new List<string>() { "a","b"};
string[] colArr = col.ToArray();

当然,你必须有“using System.Linq;” 在文件顶部

If you're using C# 3.0 and .Net framework 3.5, you should be able to do:

ICollection<string> col = new List<string>() { "a","b"};
string[] colArr = col.ToArray();

of course, you must have "using System.Linq;" at the top of the file

中性美 2024-07-17 06:15:51

ICollection 的(简单)情况下,使用 ToArray:

String[] GetArray(ICollection<String> mycoll)
{
    return mycoll.ToArray<String>();
}

编辑:在 .Net 2.0 中,您可以使用额外的 List 返回数组:

String[] GetArray(ICollection<String> mycoll)
{
    List<String> result = new List<String>(mycoll);
    return result.ToArray();
}

In the (trivial) case of ICollection<String>, use ToArray:

String[] GetArray(ICollection<String> mycoll)
{
    return mycoll.ToArray<String>();
}

EDIT: with .Net 2.0, you can return the array with an extra List<String>:

String[] GetArray(ICollection<String> mycoll)
{
    List<String> result = new List<String>(mycoll);
    return result.ToArray();
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文