public static long toLong(final Object o) { if (o instanceof BigDecimal) { return NumberUtil.toLong((BigDecimal) o); } else if (o instanceof Number) { return new BigDecimal(String.valueOf(o)).longValue(); } else { return NumberUtils.toLong(String.valueOf(o)); } }
public static int toInt(final Object o) { if (o instanceof BigDecimal) { return NumberUtil.toInt((BigDecimal) o); } else if (o instanceof Number) { return new BigDecimal(String.valueOf(o)).intValue(); } else { return NumberUtils.toInt(String.valueOf(o)); } }
public static Long[] toLongArray(final Object[] strArray) { if (strArray == null) { return new Long[0]; } final Long[] numeros = new Long[strArray.length]; for (int i = 0; i < strArray.length; i++) { numeros[i] = NumberUtil.toLong(strArray[i]); } return numeros; }
/** Tira zeros a esquerda de uma de uma número armazenado em uma String. */ public static String tiraZeroAEsquerda(final String numero) { if (numero == null) { return null; } if (numero.charAt(0) == '0') { return NumberUtil.tiraZeroAEsquerda(numero.substring(1, numero.length())); } else { return numero; } }
/** Tranforma um array de Object em um array de Números inteiros. */ public static int[] toIntArray(final Object[] strArray) { if (strArray == null) { return new int[0]; } final int[] numeros = new int[strArray.length]; for (int i = 0; i < strArray.length; i++) { numeros[i] = NumberUtil.toInt(strArray[i]); } return numeros; }
/** Tranforma um array de Object em um array de Long. */ public static Set<Long> toLongSet(final Object[] strArray) { if (strArray == null) { return new HashSet<Long>(0); } else { final Set<Long> numeros = new HashSet<Long>(); for (final Object element : strArray) { numeros.add(NumberUtil.toLong(element)); } return numeros; } }
public static double toPercent(final Object percent, final int precision) { final BigDecimal percentDecimal = NumberUtil.toBigDecimal(percent); if (percentDecimal != null) { if (percentDecimal.compareTo(BigDecimal.ZERO) > 0) { return percentDecimal .setScale(precision, RoundingMode.HALF_UP) .divide(BigDecimal.valueOf(100d), RoundingMode.HALF_UP) .setScale(precision) .doubleValue(); } } return 0d; }
public static double toDouble(final String numero, final int casas) { return NumberUtil.toDouble(numero) / Math.pow(10, casas); }
/** Retorna uma lista com as partes inteira e decimal de um número */ public static double[] divideInteiroDecimal(final Double number) { final BigDecimal numberToConvert = new BigDecimal(number.toString()); final BigDecimal[] convertedNumbers = numberToConvert.divideAndRemainder(BigDecimal.ONE); return NumberUtil.toDoubleArray(convertedNumbers); }