J2ME - format numérique
-
21-09-2019 - |
Question
Je dois formater des nombres décimaux avec des motifs dans J2ME tout comme java DecimalFormat .
Je vois une option sur le port Format / NumberFormat / DecimalFormat .
Pouvez-vous suggérer prêt à utiliser la mise en œuvre ou à la bibliothèque?
Merci!
La solution
Alors, j'ai réussi à la mise en œuvre de Java de bureau du port: bbnumberformat :
String[] patterns = new String[] { "#,#00.00#", "0.0;(0.0)",
"0.###E0" };
DecimalFormat format = (DecimalFormat) DecimalFormat
.getNumberInstance();
double value = -12.321;
for (int i = 0; i < patterns.length; i++) {
String pattern = patterns[i];
format.applyPattern(pattern);
String text = "Pattern: " + pattern
+ " Sample: "+format.format(value)+"\n";
add(new LabelField(text));
}
Autres conseils
Le code ci-dessous est la méthode qui montre comment arrondir un double à n décimales:
private double round(double num,int numDecim){
long p=1;
//next line – calculate pow(10,brDecim)
for(int i=0; i<numDecim; i++)p*=10;
return (double)(int)(p * num + 0.5) / p;
}
Vous pouvez utiliser le double p=1.0;
ou p*=10.0;
à la place.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow