有什么区别:
string1 + string2
和
string1 & string2
他们是等同的吗?为什么有两个不同的符号做同样的事情?
答案 0 :(得分:5)
只要操作数是字符串,表达式就是相同的;如果没有,+
可能会根据类型转换添加它们。 &
保证除了字符串连接之外你不会得到任何东西,并且如果可能的话会将操作数转换为字符串。
有关于Concatenation operations in Visual Basic的MSDN条目解释了它:
&运算符(Visual Basic)仅为String操作数定义,并且无论Option Strict的设置如何,它总是将其操作数扩展为String。 &建议使用运算符进行字符串连接,因为它是专门为字符串定义的,可以降低产生意外转换的几率。
答案 1 :(得分:3)
这两个表达式是等价的,但运算符不是。 +
可以用作算术运算符以及字符串连接,&
只能用于后者。