string.split 返回一个字符串 [] 我想要一个 List<string> 是不是有一个内衬可以将数组转换为列表?
Posted
技术标签:
【中文标题】string.split 返回一个字符串 [] 我想要一个 List<string> 是不是有一个内衬可以将数组转换为列表?【英文标题】:string.split returns a string[] I want a List<string> is there a one liner to convert an array to a list?string.split 返回一个字符串 [] 我想要一个 List<string> 是否有一个内衬可以将数组转换为列表? 【发布时间】:2010-09-20 02:20:20 【问题描述】:C# 中的列表具有.ToArray()
方法。我想要相反的情况,将数组转换为列表。我知道如何创建一个列表并循环遍历它,但我想要一个班轮将其交换回来。
我在.NET 2.0环境中使用String.Split
方法,所以LINQ等对我不可用。
【问题讨论】:
【参考方案1】:string s = ...
new List<string>(s.Split(....));
【讨论】:
您要小心使用 StringSplitOptions.RemoveEmptyEntries ,否则当字符串为空字符串时,您可能会得到一个包含单个空字符串的列表,而不是没有元素的列表。可能不是你想要的。 是的,但是没有List的结果也是一样的,所以这取决于他对split函数的需求,而不是数据的存储方式。 只是想提一下,因为空列表和具有一个空元素的列表之间存在语义差异。 因此,在您的示例中,我们将永远无法使用所述列表,因为它没有参考名称...【参考方案2】:在 .Net 3.5 中,System.Linq
命名空间包含一个名为 ToList<>()
的扩展方法。
【讨论】:
谢谢!正是我需要的。【参考方案3】:return new List<string>(stringArray);
【讨论】:
【参考方案4】:如果您只需要一个实现 IList 接口的对象并且您不需要添加新项目,您也可以这样做:
IList<string> list = myString.Split(' ');
【讨论】:
以上是关于string.split 返回一个字符串 [] 我想要一个 List<string> 是不是有一个内衬可以将数组转换为列表?的主要内容,如果未能解决你的问题,请参考以下文章
String.split() 无法正常运行,或者……根本没有? [复制]