Posts Tagged ‘numeri’
20
mag

Se in JAVA dovete arrotondare un numero con la virgola all’intero più vicino o comunque ad un numero decimale ma con le cifre (la precisione) da noi decisa, potete utilizzare questa funzione:

/**
* Arrotonda eventualmente un double all'intero più vicino<BR>
* Esempi:<BR>
* rounder(3.99, 1e-2) -> 4.0
* rounder(3.99, 1e-3) -> 3.99
* @param value valore da arrotondare
* @param precision precisione; ad esempio, 1e-7 indica che vogliamo 7 cifre decimali max dopo la virgola
* @return il valore eventualmente arrotondato
*/
public static double roundToInteger(double value, double precision) {
if (value>=0)
return 1.0-(value-Math.floor(value)) < precision ? Math.ceil(value) : value;
else
return 1.0-(Math.ceil(value)-value) < precision ? Math.floor(value) : value;
}

, , ,

06
mag

Quando abbiamo la necessità di formattare un numero per mostrarlo a video non sempre è così immediato farlo. Ecco una funzione JAVA adatta allo scopo:

/**
* Formatta un double in formato stringa con un numero di cifre decimali dato da precision
* @param d valore da formattare
* @param precision la precisione desiderata
* @return una stringa
*/
public static String numberFormat(double d,  int precision) {
NumberFormat nf = NumberFormat.getNumberInstance(Locale.ITALY);
nf.setMinimumFractionDigits(precision);
nf.setMaximumFractionDigits(precision);
return nf.format(d);
}

, ,