我在数据库中选择一个数字列。例如:
BigDecimal total_price_bg;
BigDecimal unit_price_bg;
if (results.next()) {
unit_price_bg = results.getBigDecimal("UNIT_PRICE");
total_price_bg = unit_price_bg.multiply(unit_price_bg); // I have trouble here..
System.out.println(total_price_bg);
}
第一行可以包含10.25,第二行可以包含第三行,第三行可以包含371.09。如何用相同的变量多次乘以大十进制?它真的可能吗?提前谢谢。
答案 0 :(得分:2)
你的意思是这样吗?
BigDecimal total_price_bg = BigDecimal.ONE;
while (results.next()) {
BigDecimal unit_price_bg = results.getBigDecimal("UNIT_PRICE");
total_price_bg = total_price_bg.multiply(unit_price_bg.pow(2));
}
System.out.println(total_price_bg);
这不断将UNIT_PRICE的平方值加到变量total_price_bg中。我将unit_price_bg的值平方,因为我注意到你自己乘以它的次数,但也许你的意思是:
BigDecimal total_price_bg = BigDecimal.ONE;
while (results.next()) {
BigDecimal unit_price_bg = results.getBigDecimal("UNIT_PRICE");
total_price_bg = total_price_bg.multiply(unit_price_bg);
}
System.out.println(total_price_bg);