Java 代码:判断 BigDecimal 值是否大于 Map 中对应的 Key 值
使用 Java 代码判断 OdsMaterialbomItem 对象中的 BillOfMaterialItemQuantity 字段值是否大于 releaseTotalMap Map 中对应 BillOfMaterialComponent 键值的 BigDecimal 值,可以使用以下代码:
if (releaseTotalMap.containsKey(realDiff.getBillOfMaterialComponent())) {
BigDecimal releaseTotal = releaseTotalMap.get(realDiff.getBillOfMaterialComponent());
BigDecimal realDiffQuantity = realDiff.getBillOfMaterialItemQuantity();
if (realDiffQuantity.compareTo(releaseTotal) > 0) {
// realDiff 中的字段BillOfMaterialItemQuantity大于releaseTotalMap的key对应的value
} else {
// realDiff 中的字段BillOfMaterialItemQuantity小于等于releaseTotalMap的key对应的value
}
} else {
// releaseTotalMap中不包含realDiff的key
}
这段代码首先使用 containsKey() 方法判断 releaseTotalMap 是否包含 realDiff 的 BillOfMaterialComponent 作为 key。如果包含,则使用 get() 方法获取对应的 value。然后,将 realDiff 的 BillOfMaterialItemQuantity 与获取到的 value 进行比较,使用 compareTo() 方法进行比较,如果大于 0 表示大于,即 realDiff 中的字段 BillOfMaterialItemQuantity 大于 releaseTotalMap 的 key 对应的 value。如果小于等于 0 表示小于等于,即 realDiff 中的字段 BillOfMaterialItemQuantity 小于等于 releaseTotalMap 的 key 对应的 value。如果 releaseTotalMap 中不包含 realDiff 的 key,则表示无法进行比较。根据实际需求,可以在代码中添加相应的逻辑来处理不同的情况。
原文地址: http://www.cveoy.top/t/topic/pgjE 著作权归作者所有。请勿转载和采集!