-1

我在使用条件检查报告中的空值时遇到问题。我的条件是

$F{BILANGAN4}==0 ? "-" : ""

字段的值不会出现,只是出现“-”。

有人知道吗?

4

1 回答 1

0

我不确定$F{BILANGAN4}==0 ? "-" : ""会编译成什么。您是否查看过为您的报告生成的 .java 代码?java.lang.Long 可能为空,所以你想这样检查:

( ( null == $F{BILANGAN4} || $F{BILANGAN4} == 0 ) ? "-" : "" )

我通常会明确地添加.longValue()到这样的调用中,只是为了明确:如果类型不正确,我会遇到编译器失败,并且我知道我需要调整一些东西,并且可能重新考虑代码。

请注意,上面的代码(例如作为文本字段值)将仅显示“-”或不显示任何内容。如果您希望$F实际显示 的值,则必须将其放在那里。我很确定这实际上是您想要的:

( ( null == $F{BILANGAN4} || $F{BILANGAN4} == 0 ) ? "-" : $F{BILANGAN4} )
于 2012-11-30T17:13:19.793 回答