作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我想了解 freemarker 如何评估具有多个条件的 if 语句,例如:
<#if person?? && person.phone?has_content && person.phone != "11">
do something
</#if>
如果人??返回 false freemarker 是否仍会评估语句的其余部分,还是只会为整个语句返回 false?我试图弄清楚 person.phone 是否为 null 此 if 语句在尝试评估 if 语句中的最后一个条件时会抛出错误吗?我试图让它尽可能干净,而不是必须嵌套一堆 if 语句。
谢谢!
最佳答案
在 Java 中,逻辑运算符 &&
和 ||
短路,这意味着如果不需要,它们不会在运算符之后计算任何内容。
在您给出的示例中,如果 person
的计算结果为 false
,则不会计算其余条件。
This answer provides a good example
此外,this forum thread 中的最后一篇文章专门针对支持短路逻辑运算符的 freemarker 讲话
关于java - 如何在 freemarker 中评估 if 语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19591475/
我是一名优秀的程序员,十分优秀!