Formatação de números

Galera eu precisando formatar meus números. Tenho uma aplicação que busca dados de um banco sql server 6.5 e me retorna valores do tipo 2132.00. Preciso que ele fique no formato 2.132,00.
Outros exemplos:
O que tenho Como preciso
1.3 1,30
3670.0 3.670,00

Como posso fazer isso? Tive olhando a classe NumberFormat do pacote java.text, mas não entendi muito bem. Alguém pode me dar uma ajuda?

[code]import java.text.NumberFormat;

NumberFormat formatter = NumberFormat.getCurrencyInstance();
System.out.println(formatter.format(1.3));[/code]

[]'s

…mas e no lugar de 1.3 eu coloar 1.30, mesmo assim a saída fica com 1.3…preciso que fique 1,30. O símbolo de R$ não é necessário

Então use a classe java.text.DecimalFormat:

[code]import java.text.DecimalFormat;

Format formatter = new DecimalFormat("###,###,##0.00");
System.out.println(formatter.format(1.30));[/code]

Mais info aqui:

http://java.sun.com/j2se/1.4.2/docs/api/java/text/DecimalFormat.html

[]'s

beleza, só tive que alterar essa linha aí, pois preciso passar um Object pra ele

System.out.println(formatter.format(new Double(1.30)));

Valeu, obrigado.

Encontrei um erro, ou melhor, uma coisa que não pode acontecer…ele está arredondando. Se eu fizer:

Format formatter = new DecimalFormat("###,###,##0.00");
System.out.println(formatter.format(new Double(“0.075889”)));

O retorno será 0.08 e não pode. Tem como corrigir isso?

Aumente o número de casas decimais no padrão que você definiu quando criou o DecimalFormat. :wink:

ok…não tinha me atentado pra isso