gpt4 book ai didi

java - 即使变量值为 null,流程也会进入 if 条件

转载 作者:行者123 更新时间:2023-12-02 02:06:31 24 4
gpt4 key购买 nike

如果条件不起作用,并且在不检查“if”条件的情况下,它会进入“if” block ,并在variabel1为空时抛出异常。

freemarker.core.InvalidReferenceException: The following has evaluated to null or missing:enter code here ==> label.variabel1 [in template "crossborader.fo" at line 244, column 124]

下面是代码

[#if label.field?has_content && (label.variabel1 == 'uk_image.png' || label.variabel1 == 'ireland_image.png' || label.variabel1 == 'ireland_RETURN_IT.png')]
<fo:table-cell number-columns-spanned="2">
<fo:block>
<fo:table>
<fo:table-column/>
<fo:table-body>
<!-- SERVICE OFFER POSITION 3 & 4 -->
<fo:table-row>
<fo:table-cell height="38mm" padding="1mm">
<fo:block text-align="right">
<fo:external-graphic
src="url('templates/${label.variabel1}.png')" content-width="29mm"/>
</fo:block>
</fo:table-cell>
</fo:table-row>
</fo:table-body>
</fo:table>
</fo:block>`enter code here`
</fo:table-cell>
[/#if]

如果变量值为 null,则不应进入 if block 。

最佳答案

我对xsl没有经验,但在java中你应该总是使用equals()字符串方法来检查两个字符串是否相等。另外,您可以简单地检查 null 值作为 if 条件中的第一件事。类似于if !(label.variable1 == null) && ...。理想情况下,这会跳过 if block ,因为 && 运算符的第一个值是 false。这是基本的控制流程。

关于java - 即使变量值为 null,流程也会进入 if 条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57354764/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com