2014-11-23 51 views
3

如何将字符串拆分为List?我正在寻找相当于ToCharArray的东西,而不是将其作为List。ToCharArray相当于列表<string>

string data = "ABCDEFGHIJ1fFJKAL"; 
List<string> datalist = new List<string>(); 
datalist.AddRange(new List<string>{"A","B","C"}); 

如何转换数据以便它将被AddRange接受?

+0

所以字符串单字符字符串列表? 'str.Select(c => c.ToString())。ToList()' – 2014-11-23 03:19:00

回答

6

如果你想字符的列表,那么你可以使用一个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())); 
0

这里有一种方法

string data = "ABCDEFGHIJ1fFJKAL"; 
List<string> datalist = new List<string>(); 
datalist.AddRange(data.Select (d => d.ToString())); 
1

由于新列表实例的初始化接受其元素将被复制到新列表中的集合,所以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()));