如何将字符串拆分为C#中的字符数组?
示例使用的字符串字是"机器人".
该程序应打印出来:
r o b o t
原始代码段:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Diagnostics; using System.IO; using System.Text.RegularExpressions; namespace Testing { class Program { static void Main(string[] args) { String word = "robot"; String[] token = word.Split(); // Something should be placed into the () to //print letter by letter?? foreach (String r in token) { Console.WriteLine(r); } } } }
如何正确实施代码?
为什么不呢?
public void WriteLetters(string s) { foreach (char c in s) { Console.WriteLine(c); } }
如果您确实希望在显式字符数组中看到它,请执行以下操作:
string s = "robot"; char[] charArray = s.ToCharArray();
如果您想打印出来(每行1个),请执行以下操作:
for (int i = 0; i < charArray.Length; i++) { Console.WriteLine(charArray[i]); }
我不确定你要做什么,所以我可能会离开基地.
如果通过tokenize,您的意思是将字符存储在数组中,那么您已经在String对象中拥有该字符1.
1实际上并非如此,因为String使用索引器来迭代字符值,而在C/C++中,字符串实际上是一个字符数组.出于我们的目的,我们可以将字符串视为字符数组
该类String
实现IEnumerable
并因此贯穿字符串的字母,您可以一次抓取IEnumerator
并处理一个字符串char
.一种方法是使用foreach
:
foreach(char c in "robot") { Console.WriteLine(c); }
如果您需要char
阵列中的每一个,您可以使用String.ToCharArray
:
char[] letters = "robot".ToCharArray();