繁体   English   中英

所需类型 Integer 提供 BigDecimal Java compareTo()

[英]Required type Integer provided BigDecimal Java compareTo()

代码错误

在以下方法中,我尝试使用 compareTo() 来比较 getErclasCurrErWtPerValNo() 是 Integer 和 getErclasHrWorkEligNo() 是 BigDecimal。 我没有任何运气铸造或使用 intValue()。 如何解决?

public Integer getErclasCurrErWtPerValNo() {
        return this.erclasCurrErWtPerValNo;
    }

public BigDecimal getErclasHrWorkEligNo() {
        return this.erclasHrWorkEligNo;
    }


if (StringUtils.isEmpty(erpp.getEbErClasses().getErclasHrWorkEligNo())) {
    errors.rejectValue(fieldPrefix + "ebErClasses.erclasHrWorkEligNo", getSectionName(),
            "Minimum Working Hours Per Week is required.");
} else if (erpp.getEbErClasses().getErclasCurrErWtPerValNo().compareTo(erpp.getEbErClasses().getErclasHrWorkEligNo())){
    errors.rejectValue(fieldPrefix + "ebErClasses.erclasHrWorkEligNo", getSectionName(),
            "Hours can not be below " + erpp.getEbErClasses().getErclasHrWorkEligNo().intValue() + ".");
}

BigDecimal 作为 intValue() 方法,“将此 BigDecimal 转换为 int”。 https://docs.oracle.com/javase/8/docs/api/java/math/BigDecimal.html

这会起作用:

erpp.getEbErClasses().getErclasCurrErWtPerValNo().compareTo(erpp.getEbErClasses().getErclasHrWorkEligNo.intValue() == 0

我会添加一个 null 检查

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM