我试图将一个字符数组转换为一个字符串数组(每个字符都变成一个字符串),因为我需要它成为一个字符串数组,以便稍后在程序中对该数组进行一些处理。这是我正在使用的代码:
Dim inputexpression As String = UCase(txtInput.Text)
Dim arrinputexpressionchar() As Char = inputexpression.ToCharArray()
Dim arrinputexpression() As String
For i = 0 To arrinputexpressionchar.Length
arrinputexpression(i) = Char.ToString(arrinputexpressionchar(i))
Next
Run Code Online (Sandbox Code Playgroud)
但是,这引发了“未处理NullReferenceException”(对象引用未设置为对象的实例)错误。为什么此代码不起作用?
您已经声明但尚未初始化字符串数组。
您可以使用LINQ:
Dim charsAsStringArray = inputexpression.
Select(Function(c) c.ToString()).
ToArray()
Run Code Online (Sandbox Code Playgroud)
这是非linq方式:
Dim strArray(inputexpression.Length - 1) As String
For i = 0 To charArray.Length - 1
strArray(i) = inputexpression(i).ToString()
Next
Run Code Online (Sandbox Code Playgroud)