Esempio

public static void main(String[] args){
double d = 1234567.089;
float f = (float) 12345.678;
long l = 123456789;
int i = 1234567;

System.out.println(String.valueOf(d));
System.out.println(String.valueOf(f));
System.out.println(String.valueOf(l));
System.out.println(String.valueOf(i));
}
Soluzione
Utilizzare
  • java.text.NumberFormat.format (int)
  • java.text.NumberFormat.format (double)
  • java.text.NumberFormat.format (float)
  • java.text.NumberFormat.format (long)

public static void main(String[] args){
NumberFormat nf_en = NumberFormat.getNumberInstance(new Locale("en", "US")); //$NON-NLS-1$ //$NON-NLS-2$
double d = 1234567.089;
float f = (float) 12345.678;
long l = 123456789;
int i = 1234567;
System.out.println("Format under locale en_US: "); //$NON-NLS-1$
System.out.println(nf_en.format(d));
System.out.println(nf_en.format(f));
System.out.println(nf_en.format(l));
System.out.println(nf_en.format(i));

NumberFormat nf_fr = NumberFormat.getNumberInstance(new Locale("fr", "FR")); //$NON-NLS-1$ //$NON-NLS-2$
System.out.println("Format under locale fr_FR: "); //$NON-NLS-1$
System.out.println(nf_fr.format(d));
System.out.println(nf_fr.format(f));
System.out.println(nf_fr.format(l));
System.out.println(nf_fr.format(i));
}