乘以从数据库中选择的bigdecimal数

时间:2016-02-19 13:39:42

标签: java mysql bigdecimal

我在数据库中选择一个数字列。例如:

                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。如何用相同的变量多次乘以大十进制?它真的可能吗?提前谢谢。

1 个答案:

答案 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);