[RESOLVIDO] Limitar casas decimais de double

8 respostas
M

Olá,
estou fazendo um programa para celular que realiza cálculos com double. O problema é que o resultado fica muito grande para exibir no visor do celular, a estética fica feia. Existe algum método pra limitar as casas decimais a serem mostradas em J2ME?
Algo que faça 56.789054 virar 56.78?
Obrigada :slight_smile:

8 Respostas

FabricioPJ

Teste isso:

BigDecimal valor = new BigDecimal(seuValor); valor.setScate(2, BigDecimal.ROUND_UP); //Seta o n° de casas decimais para 2 e o arredondamento para cima double valorFormatado = valor.doubleValue();

M

Ele não acha a classe BigDecimal, esqueci de importar algo?

FabricioPJ
Isso deve resolver.

Isso deve resolver.

M

Diz que o pacote java.math não existe =/

FabricioPJ

Agora que fui ver que seu problema está no contexto J2ME…

Não sei se essa solução que lhe passei se aplica a esse contexto.

tgmarinho

se vc estivesse programando no eclipse, só bastava clicar no (!) da linha 1 q ele ja importava o pacote certo pra vc

Scoobydoo

Oi amigo, então, em J2ME você tem que fazer assim ó
exemplo, o Text que eu to usando é o valor unitario * quantidade do produto * porcentagem, o que me gera numeros irreais…
porem, resolvi assim

int y; String valor1; String valor; String valor2; valor1 = Seu Valor Decimal y = valor1.indexOf("."); valor2 = valor1.substring(y, valor1.length()); if (valor2.length() < 3) { valor2 = valor2 + 000; } valor2 = valor2.substring(0, 3); valor1 = valor1.substring(0, y); valor = (valor1 + valor2); //BLz, agora esse valor é só com 2 casas Decimais

é só criar uma procedure e executar ela passando seu valor como parametro… e da um return valor… facil neh

M

Scoobydoo, funcionou, muito obrigada!

Criado 19 de março de 2010
Ultima resposta 19 de mar. de 2010
Respostas 8
Participantes 4