如何在VB.NET中使用类似Java的==相等运算符及代码运行错误原因
VB.NET相等判断结果不符合预期的原因
- 相等运算符用法错误
Java中==是相等判断运算符,VB.NET中等效的相等判断运算符为=;你代码中使用的<>是VB.NET的不等判断运算符,等价于Java的!=,因此100 <> 100的计算结果直接为False,是导致结果不符合预期的核心原因。 - 逻辑运算符存在差异
VB.NET中的And是不短路逻辑与/按位与运算符,无论左侧表达式结果如何,都会强制计算右侧表达式,行为和Java中作为逻辑运算使用的按位与&一致。如果你需要实现Java中短路逻辑与&&的效果,应该使用AndAlso运算符,对应的短路逻辑或使用OrElse代替Or即可。
如果你要实现Java中(100 == 100) && false的等效逻辑,正确写法如下:
Sub Main() Console.WriteLine((100 = 100) AndAlso False) End Sub End Module
内容的提问来源于stack exchange,提问作者Mohammad Attallah
相关产品推荐
相关产品推荐

