串联运算符 (Visual Basic)
更新:2007 年 11 月
串联运算符将多个字符串联接为一个字符串。有两种串联运算符:+ 和 &。这两种串联运算符都执行基本的串联运算,如下面的示例所示。
Dim x As String = "Con" & "caten" & "ation"
Dim y As String = "Con" + "caten" + "ation"
' The preceding statements set both x and y to "Concatenation".
这两种运算符还可以串联 String 变量,如下面的示例所示。
Dim a As String = "abc"
Dim d As String = "def"
Dim z As String = a & d
Dim w As String = a + d
' The preceding statements set both z and w to "abcdef".
两种串联运算符之间的区别
+ 运算符 (Visual Basic) 的主要用途是将两个数字相加。不过,它还可以将数值操作数与字符串操作数串联起来。+ 操作数具有一套复杂的规则,用来确定是相加、串联、指示编译器错误还是引发运行时的 InvalidCastException 异常。
& 运算符 (Visual Basic) 仅定义用于 String 操作数,而且无论 Option Strict 的设置是什么,都会将其操作数扩展到 String。对于字符串串联操作,建议使用 & 运算符,原因是它专门定义用于字符串,可以降低产生意外转换的可能性。
性能:字符串和 StringBuilder
如果您对字符串执行大量操作(如串联、删除或替换),则通过 System.Text 命名空间中的 StringBuilder 类可能会提高性能。该类采用额外指令来创建和初始化 StringBuilder 对象,并且使用其他指令将其最终值转换为 String,但此时您可能恢复使用 StringBuilder,因为它的执行速度更快。