2010-12-16 4 views
1

Я использую BigDecimal следующим образом:Как указать количество десятичных знаков BigDecimal для печати?

BigDecimal val = object.getValue();//it returns BigDecimal type value 

val содержит 12.2300. Я хочу отобразить 12.23 на моей странице. Как я могу это сделать?

+2

Возможные контратип HTTP: // stackoverflow.com/questions/3395825/how-to-print-formatted-bigdecimal-values ​​ – 2010-12-16 05:35:00

ответ

1

вы можете использовать DecimalFormat или вы можете манипулировать с операциями Струнные

 public static String format(BigDecimal big, int precision){ 
      String bigS = big.toString(); 
      int index = bigS.indexOf('.'); 
      String add = bigS.substring(index, index + precision + 1); 
      String formatted = big.longValue() + "" + add; 

      return formatted; 
     } 

     public static void main(String[] args) { 

      BigDecimal big = new BigDecimal(2342342232.23232); 
      System.out.println(format(big, 2)); 
      System.out.println(format(big, 3)); 
     } 

Конечно, DecimalFormat умный способ

+1

Нельзя полагаться на `toString()` вообще. ;) – Bozho 2010-12-16 06:40:57

Смежные вопросы