Olá!
Encontrei esse código que explica como converter qualquer tipo de numero em BigInteger ou BigDecimal. Mas não consigo implementar, se alguém puder escrever um exemplo tipo double d = 0.86 e converte-lo em BigInteger ficarei muito grato!
/*
- NumericConverterImpl.java
- Created on March 21, 2003
/
/
package com.sun.jdo.spi.persistence.support.sqlstore.utility;
import java.math.BigDecimal;
// import java.math.BigInteger;
/
/*
- This is a concrete implementation class for numeric conversion to BigDecimal
- or BigInteger. For conversion to BigInteger, we truncate the fraction
- part of the number.
-
@author Shing Wai Chan
*/
/*
public class NumericConverterImpl implements NumericConverter {
/**
* @param policy for determine mechanism for conversion to BigDecimal
* and BigInteger
/
/ public NumericConverterImpl() {
}
/
/*
* To convert BigInteger to BigDecimal.
* @param bInteger the BigInteger to be converted
* @return converted BigDecimal
/
/ public BigDecimal toBigDecimal(BigInteger bInteger) {
return (bInteger == null) ? null : new BigDecimal(bInteger);
}
/**
* To convert Double to BigDecimal.
* @param d the Double to be converted
* @return converted BigDecimal
*/
/* public BigDecimal toBigDecimal(Double d) {
return (d == null) ? null : new BigDecimal(d.toString());
}
/**
* To convert Float to BigDecimal.
* @param f the Float to be converted
* @return converted BigDecimal
*/
/* public BigDecimal toBigDecimal(Float f) {
return (f == null) ? null : new BigDecimal(f.toString());
}
/**
* To convert Number other than BigInteger, Double and Float to BigDecimal.
* @param n the Number to be converted
* @return converted BigDecimal
*/
/* public BigDecimal toBigDecimal(Number n) {
return (n == null) ? null : new BigDecimal(n.toString());
}
/**
* To convert BigDecimal to BigInteger.
* @param bDecimal the BigDecimal to be converted
* @return converted BigInteger
*/
/* public BigInteger toBigInteger(BigDecimal bDecimal) {
return (bDecimal == null) ? null : bDecimal.toBigInteger();
}
/**
* To convert Double to BigInteger.
* @param d the Double to be converted
* @return converted BigInteger
*/
/* public BigInteger toBigInteger(Double d) {
return (d == null) ? null : (new BigDecimal(d.toString())).toBigInteger();
}
/**
* To convert Float to BigInteger.
* @param f the Float to be converted
* @return converted BigInteger
*/
/* public BigInteger toBigInteger(Float f) {
return (f == null) ? null : (new BigDecimal(f.toString())).toBigInteger();
}
/**
* To convert Number other than BigDecimal, Double and Float to BigInteger.
* @param n the Number to be converted
* @return converted BigInteger
*/
/* public BigInteger toBigInteger(Number n) {
return (n == null) ? null : BigInteger.valueOf(n.longValue());
}
}
*/