假设我有一个这样的字符串。
Dim str As String = "code"
我需要将此字符串分解为像这样的字符数组
{"c", "o", "d", "e"}
我该怎么做?
答案 0 :(得分:18)
每个字符串都是一个隐式字符数组。所以你可以通过以下方式获得第三个字符:
Dim char3 = str(2)
修改:只是为了完整起见。您还可以使用String.ToCharArray
将字符串实例转换为新的char-array
实例。使用ToCharArray
的核心好处是,您收到的char数组是可变的,这意味着您实际上可以更改每个单独的字符。
请注意,您也可以使用LINQ
。例如,如果您想要字符串的前三个字符:
Dim firstThree As Char() = str.Take(3).ToArray()
答案 1 :(得分:7)
dim chars as Char() = str.ToCharArray()
答案 2 :(得分:1)
引用@AlexeiLevenkov,
你可以使用 String.ToCharArray 将其转换为字符数组,或使用 ToArray 如果你更喜欢LINQ:
Dim delimStr As String = " ,.:" Dim delimiter As Char() = delimStr.ToCharArray() "foo".ToArray()
(我添加了上述备选方案,因为重复的问题将很快关闭;值得保留LINQ替代方案。)
答案 3 :(得分:1)
我做了一些基准测试,ToCharArray比LINQ的ToArray快了大约30倍。
答案 4 :(得分:0)
尝试:
Dim str As String = "code"
' Use For Each loop on string.
For Each element As Char In str
Console.WriteLine(element)