例如,我可以使用以下代码:
<logic:equal name="userForm" property="isRishi" value="YES">
Welcome, your name is Rishi</logic:equal>
还有另外一段代码:
<logic:notEqual name="userForm" property="isRishi" value="NO">
Welcome, your name is Rishi</logic:notEqual>
两者的功能都相同。那么使用这两个标签有什么区别呢?
答案 0 :(得分:4)
如果只有两个可能的值,唯一的区别是第二种形式由于双重否定而难以理解。
如果isRishi
的值不是“是”和“否”(例如为空),则差异应该是显而易见的。
答案 1 :(得分:0)
它们的存在是为了提高可读性。 notEqual to no
令人费解,更难掌握。
而且,出于!
运算符存在的原因相同。
答案 2 :(得分:0)
还有其他情况。如果你想在“YES”情况下做一件事而在YES-YES情况下做一件事怎么办?你可以将另一个案例表示为等于NO,但是(a)它可能是null,(b)如果你没有布尔值但是其他东西可能有许多你不感兴趣的值。