VB中&和+有多种不同用法:
&:
&运算符,用来强制两个表达式作字符串连接。
&标识符,Long 的类型声明字符为和号 (&)。&H、&O分别作为前缀表示16进制数、八进制数。
适当范围内的数字,前缀以 &H,可以直接表示十六进制数字。例如,十六进制表示法的 &H10 ,代表十进制的 16。
将适当范围的数前缀以 &O 来直接表示八进制数字。例如,八进制表示法的 &O10
代表十进制的 8。
+ :
算术运算符,+ 运算符,用来求两数之和。
连接运算符,+ 运算符,用来拼接字符串。
+ 运算符时有可能无法确定是做加法还是做字符串连接。为避免混淆,请使用 &
运算符进行连接,并且改进程序代码的可读性。
两个都是连接运算符:
“&”运算符:适合所有的数据连接。如果参与链接的数据类型不是字符串,“&”运算符将自动将操作数变为字符串然后连接。
“+”运算符:知识和字符串进行连接,其他类型数据和字符串进行连接运算时,不能用“+”运算符,否则系统会出错。
字符串运算符和字符串表达式
字符串运算符的作用是将两个字符串连接成一个字符串,经常形象的叫做连接符。
在VB中就提供了两种连接用的字符串运算符 “&”、“+”
例如
“VB”+“编程入门” 就等同于“VB编程入门”
“VB”&“编程入门” 就等同于“VB编程入门”
说明:
在字符串数据后面使用“&” 时,应该在运算符和字符串之间加一个空格
"A" & "B" 二不是"A"&"B"
原因是应为,”&“也是整型的类型说明符,如果没有空格的话,程序运行的时候,系统就会默认为他只是一个 类型说明符,单个的类型说明符赤裸的出现在代码中就会报错。
+ 和 & 的区别
+
根据两边的操作数不同分几种情况
1、两边都是字符。则执行字符串连接功能
2、两边都是数字。则执行数学加法
3、两边有一个是数字字符,另外一个是数值,则自动将数字字符转换为具体的数值进行加法
4、两边有一个事非数字字符、另外一个事数字、那么就会报错,应为无法将非数字字符转换为数字。
&
无论两边是什么,都想将其转换为字符,然后进行字符连接。如果你要连接字符建议只用”&“
给几个例子吧
"222"+"333"="222333"
222+333=555
222+"333"=555
222+"abc" 会报错
222 & 333 =222333
222 & "333" = 222333
222 & "abc" =222abc
222 + "333" & "abc" = 555abc
222 + "333" & "100" = 555100
222 & "333" +"100"=222333100