Java BigDecimal Create toBigDecimal(Object o)

Here you can find the source of toBigDecimal(Object o)

Description

to Big Decimal

License

MIT License

Declaration

public static BigDecimal toBigDecimal(Object o) 

Method Source Code


//package com.java2s;
/*!/* w  ww.j  a  v  a 2 s .  c  om*/
  * mifmi-commons4j
  * https://github.com/mifmi/mifmi-commons4j
  *
  * Copyright (c) 2015 mifmi.org and other contributors
  * Released under the MIT license
  * https://opensource.org/licenses/MIT
  */

import java.math.BigDecimal;
import java.math.BigInteger;

import java.text.DecimalFormat;

import java.util.concurrent.atomic.AtomicInteger;
import java.util.concurrent.atomic.AtomicLong;

public class Main {
    public static BigDecimal toBigDecimal(Object o) {
        if (o == null) {
            return null;
        }

        BigDecimal bigDecimal;
        if (o instanceof Byte) {
            bigDecimal = BigDecimal.valueOf((Byte) o);
        } else if (o instanceof Short) {
            bigDecimal = BigDecimal.valueOf((Short) o);
        } else if (o instanceof Integer) {
            bigDecimal = BigDecimal.valueOf((Integer) o);
        } else if (o instanceof Long) {
            bigDecimal = BigDecimal.valueOf((Long) o);
        } else if (o instanceof Float) {
            bigDecimal = BigDecimal.valueOf((Float) o);
        } else if (o instanceof Double) {
            bigDecimal = BigDecimal.valueOf((Double) o);
        } else if (o instanceof BigInteger) {
            bigDecimal = new BigDecimal((BigInteger) o);
        } else if (o instanceof BigDecimal) {
            bigDecimal = (BigDecimal) o;
        } else if (o instanceof AtomicInteger) {
            bigDecimal = BigDecimal.valueOf(((AtomicInteger) o).longValue());
        } else if (o instanceof AtomicLong) {
            bigDecimal = BigDecimal.valueOf(((AtomicLong) o).longValue());
        } else if (o instanceof Character) {
            bigDecimal = BigDecimal.valueOf((long) ((Character) o).charValue());
        } else {
            bigDecimal = new BigDecimal(o.toString());
        }

        return bigDecimal;
    }

    public static String toString(Number value, String pattern) {
        if (value == null) {
            return null;
        }

        DecimalFormat df = new DecimalFormat(pattern);

        return df.format(value);
    }
}

Related

  1. nullToZero(BigDecimal decimal)
  2. nullToZero(BigDecimal num)
  3. toBig(Object o)
  4. toBigDecimal(final Object o)
  5. toBigDecimal(final Object value)
  6. toBigDecimal(Object obj)
  7. toBigDecimal(String bigDecimal)
  8. toBigDecimal(String text)
  9. toBigNumber(Number n)