Excel 带有 And 运算符的 If 语句

Excel If statement with And operator

我正在将复杂的 excel 宏迁移到 Java 代码。 我在 VBA 中有如下代码片段。您能否帮助理解此 if 块(表达式)的结构。谢谢

这里的 nLen 是一些正整数。

If ((nLen - 1) And &H1) <> 0 Then
   //some code here
End If

And 是按位与运算符。 &H 是十六进制文字的前缀,所以 &H1 是 1。这相当于 (nLen - 1) Mod 2.

所以,以一种非常迂回的方式,这段代码所做的是检查 nLen 是否是偶数。