Visual Basic 中的串联运算符

串联运算符将多个字符串联接到单个字符串中。 有两个串联运算符, + 以及 &。 两者都执行基本的连接操作,如以下示例所示。

Dim x As String = "Mic" & "ro" & "soft"
Dim y As String = "Mic" + "ro" + "soft"
' The preceding statements set both x and y to "Microsoft".

这些运算符还可以连接 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".

两种串联运算符之间的区别

+ 运算符的主要用途是添加两个数字。 但是,它还可以将数值作数与字符串作数连接起来。 + 操作数具有一套复杂的规则,用来确定是相加、串联、指示编译器错误还是引发运行时的 InvalidCastException 异常。

& 运算符仅针对 String 操作数定义,而且无论 String 的设置是什么,它都会将其操作数扩展到 Option Strict。 建议使用&运算符进行字符串连接,因为它是专为字符串设计的,并降低了发生意外转换的可能性。

性能:字符串和字符串生成器

如果在字符串上执行大量作(例如串联、删除和替换),则性能可能会从 StringBuilder 命名空间中的 System.Text 类中获利。 它需要额外的指令来创建和初始化 StringBuilder 对象,以及另一个指令将其最终值转换为 a String,但你可能会恢复这一次,因为 StringBuilder 执行速度更快。

另请参阅