Java: Formatando um Valor Numerico: Difference between revisions
(New page: Solução pra um problema comum em foruns Java. <code java5> package testes; import java.math.BigDecimal; import java.text.DecimalFormat; import java.text.DecimalFormatSymbols; import ja...) |
|||
(2 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
Solução pra um problema comum em foruns Java. | Solução pra um problema comum em foruns Java. | ||
= Exemplo = | |||
import java.math.BigDecimal; | package testes; | ||
import java.text.DecimalFormat; | |||
import java.text.DecimalFormatSymbols; | import java.math.BigDecimal; | ||
import java.util.Locale; | import java.text.DecimalFormat; | ||
import java.text.DecimalFormatSymbols; | |||
public class FormataValor { | import java.util.Locale; | ||
public class FormataValor { | |||
public static void main(String[] args) { | |||
System.out.println(formataValor(".03")); | |||
System.out.println(formataValor("0.03")); | |||
System.out.println(formataValor("003")); | |||
System.out.println(formataValor("30000.00")); | |||
System.out.println(formataValor("3000000")); | |||
} | |||
public static String formataValor(String valor){ | |||
BigDecimal bd = new BigDecimal(valor); | |||
bd.setScale(8,BigDecimal.ROUND_HALF_UP); | |||
String pattern = "###,###,##0.00"; | |||
Locale locale=new Locale("pt","BR"); | |||
DecimalFormatSymbols symbols=new DecimalFormatSymbols(locale); | |||
symbols.setDecimalSeparator(','); | |||
symbols.setGroupingSeparator('.'); | |||
DecimalFormat f=new DecimalFormat(pattern,symbols); | |||
return f.format(bd); | |||
} | |||
} | } | ||
O resultado é: | O resultado é: | ||
Line 45: | Line 46: | ||
'''30.000,00''' | '''30.000,00''' | ||
'''3.000.000,00''' | '''3.000.000,00''' | ||
= Ver também = | |||
*[[BIND: Configurando o suporte ao Active Directory]] | |||
*[[Java| Mais Artigos sobre Java]] | |||
*[[Tecnologias| Mais Artigos sobre outras Tecnologias]] | |||
*[[Apache HTTP Server| Mais Artigos sobre Apache HTTP Server]] | |||
*[[Linux| Mais Artigos sobre Linux / UNIX / AIX]] | |||
[[Category:Java]] | |||
[[Category:Tecnologias]] |
Latest revision as of 22:40, 25 September 2014
Solução pra um problema comum em foruns Java.
Exemplo
package testes; import java.math.BigDecimal; import java.text.DecimalFormat; import java.text.DecimalFormatSymbols; import java.util.Locale; public class FormataValor { public static void main(String[] args) { System.out.println(formataValor(".03")); System.out.println(formataValor("0.03")); System.out.println(formataValor("003")); System.out.println(formataValor("30000.00")); System.out.println(formataValor("3000000")); } public static String formataValor(String valor){ BigDecimal bd = new BigDecimal(valor); bd.setScale(8,BigDecimal.ROUND_HALF_UP); String pattern = "###,###,##0.00"; Locale locale=new Locale("pt","BR"); DecimalFormatSymbols symbols=new DecimalFormatSymbols(locale); symbols.setDecimalSeparator(','); symbols.setGroupingSeparator('.'); DecimalFormat f=new DecimalFormat(pattern,symbols); return f.format(bd); } }
O resultado é:
0,03 0,03 3,00 30.000,00 3.000.000,00
Ver também