类型不匹配:无法从布尔值转换为对象值

问题描述 投票:0回答:1

我正在尝试在字段中添加一个条件:Print When Expression

$F{CARTEIRA_FORMATADA}.floatValue() > $F{DESCRICOES}.floatValue() 

但它给了我一个错误:

Type mismatch: cannot convert from boolean to Object
value = ((java.lang.Integer)field_CARTEIRA_FORMATADA.getValue()).floatValue() > ((java.lang.Integer)field_DESCRICOES.getValue()).floatValue(); 

输入值为 0 和 1,尝试为 Float、String(使用 ==),但总是出现相同的错误 我需要在“Print When Expression”中使用 1 个或多个字段放置一个条件,并且它总是给我一个从布尔值转换为对象的错误

jasper-reports
1个回答
0
投票

我认为你的表达式返回一个布尔值,但系统可能正在寻找一个布尔值(包装类)对象。

您可以将其转换为包装布尔值,如下所示。

new Boolean($F{CARTEIRA_FORMATADA}.floatValue() > $F{DESCRICOES}.floatValue() );

试试这个。

© www.soinside.com 2019 - 2024. All rights reserved.