我们曾经在上一篇文章中为大家详细介绍了两种VB.NET串联运算符应用方式,那么VB.NET运算符组合和串联运算符的应用方式又有什么不同之处呢?这一问题将会在这篇文中找到答案,大家一起来看看吧。
复杂表达式可包含许多不同的运算符。下面的示例阐释这一点。
- x = (45 * (y + z))
^ (2 / 85) * 5 + z
创建前面示例中这样的复杂表达式要求彻底理解运算符优先级的规则。有关更多信息,请参见 Visual Basic 中的运算符优先级。
加括号的表达式
经常需要以不同于运算符优先级所确定的顺序来执行运算。请看下面的VB.NET运算符组合示例。
- x = z * y + 4
前面的示例将 z 乘以 y,然后将结果与 4 相加。但是,如果想要将 y 与 4 相加,然后再将结果与 z 相乘,您可以通过使用括号来重写常规运算符优先级。通过将表达式放在括号中,将强制首先计算该表达式,而不管运算符优先级如何。为了强制前面的示例先计算加法,您可以按以下示例中所示的方式重写该示例。
- x = z * (y + 4)
前面的VB.NET运算符组合示例将 y 与 4 相加,然后再将和与 z 相乘。
嵌套的带括号表达式
可以将表达式嵌套到多层括号中,以进一步重写优先级。将首先计算嵌套在括号中最深层的表达式,然后计算下一个嵌套最深的表达式,依此类推计算到嵌套在最外层的表达式,最后计算括号外部的表达式。下面的示例阐释这一点。
- x = (z * 4) ^
(y * (z + 2))
在前面的VB.NET运算符组合示例中,将首先计算 z + 2 的值,然后再计算其他带括号的表达式。通常比加法或乘法具有更高优先级的求幂在此示例中最后计算,因为其他表达式都放在括号中。
【编辑推荐】