如何将字符串拆分为List?我正在寻找相当于ToCharArray的东西,而是把它变成一个List。
string data = "ABCDEFGHIJ1fFJKAL";
List<string> datalist = new List<string>();
datalist.AddRange(new List<string>{"A","B","C"});
如何转换数据以便AddRange接受?
答案 0 :(得分:10)
如果你想要一个字符列表,那么你可以使用List<char>
而不是List<string>
,然后你就不需要对字符串做任何事情了。 AddRange
方法需要IEnumerable<char>
,而String
类恰好实现IEnumerable<char>
:
string data = "ABCDEFGHIJ1fFJKAL";
List<char> datalist = new List<char>();
datalist.AddRange(data);
如果你想要List<string>
来保存字符,那么你需要将每个字符转换为字符串:
string data = "ABCDEFGHIJ1fFJKAL";
List<string> datalist = new List<string>();
datalist.AddRange(data.Select(c => c.ToString()));
答案 1 :(得分:2)
由于新列表实例的初始化接受其元素将被复制到新列表的集合,因此Guffa的答案可以缩短为:
string data = "ABCDEFGHIJ1fFJKAL";
List<char> datalist = new List<char>(data);
和
string data = "ABCDEFGHIJ1fFJKAL";
List<string> datalist = new List<string>(data.Select(c => c.ToString()));
答案 2 :(得分:0)
这是一种方式
string data = "ABCDEFGHIJ1fFJKAL";
List<string> datalist = new List<string>();
datalist.AddRange(data.Select (d => d.ToString()));
答案 3 :(得分:0)
如果您希望结果为List<char>
,则str.ToList()
将起作用。