VB中的&何时与+不等价
3个回答
展开全部
在VB中,& 表示字符串连接操作; + 多用于数学运算(加法),也能用于字符串连接。
当操作符是 & 的时候,如果被操作的数据不是String类型,则按规则首先转换为String类型,
再进行字符串连接的操作。
但当操作符是 + 的时候,问题就稍微复杂些了:
⑴如果被操作数据两个都是 String类型,则进行字符串连接的操作(与用&一样)。
⑵如果被操作数据,任意一个不是String类型的,则都首先按规则转换为对应的数值数据,
再进行“加法运算”。当任意一个数据不能被转换为数值时,就出现“类型不匹配”的异常!
因些,对表示字符串连接操作运算,应该采用 & ,而不要用 + !
(我认为这是好习惯,既明确目的,也不会引起歧义)
当操作符是 & 的时候,如果被操作的数据不是String类型,则按规则首先转换为String类型,
再进行字符串连接的操作。
但当操作符是 + 的时候,问题就稍微复杂些了:
⑴如果被操作数据两个都是 String类型,则进行字符串连接的操作(与用&一样)。
⑵如果被操作数据,任意一个不是String类型的,则都首先按规则转换为对应的数值数据,
再进行“加法运算”。当任意一个数据不能被转换为数值时,就出现“类型不匹配”的异常!
因些,对表示字符串连接操作运算,应该采用 & ,而不要用 + !
(我认为这是好习惯,既明确目的,也不会引起歧义)
展开全部
“&”是连接符,用来连接前后两个字符串,组成一个新字符串,例如:
s = "a" & "B" & "c"
s得到的结果就是:"aBc"
"+"在连接字符串的时候具有和"&"同样的作用,例如上面的例子这么改:
s = "a" + "B" + "c"
s同样得到的结果也是:"aBc"
但是"+"除了作为连接符之外,还表示加法运算法,例如:
a = 1
b = 2
n = a + b
那么,这个时候就执行的是加法运算: n = 1 + 2 = 3
使用的时候,字符串连接使用"&",数值运算使用"+"就不容易弄混了!
s = "a" & "B" & "c"
s得到的结果就是:"aBc"
"+"在连接字符串的时候具有和"&"同样的作用,例如上面的例子这么改:
s = "a" + "B" + "c"
s同样得到的结果也是:"aBc"
但是"+"除了作为连接符之外,还表示加法运算法,例如:
a = 1
b = 2
n = a + b
那么,这个时候就执行的是加法运算: n = 1 + 2 = 3
使用的时候,字符串连接使用"&",数值运算使用"+"就不容易弄混了!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
与是一种关系,比如a<1 and a>0
+可以是一种运算,可以在赋值语句中。 比如 a=1+2
+可以是一种运算,可以在赋值语句中。 比如 a=1+2
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询