Formatando Numeros

5 respostas
smota

Ola Pessoal,

Tem como eu definir um formato de exibicao para um numero sem divisao de decimais com duas casa decimais?

Ex: 100.00 se torna 10000

Nao queria utilizar funcoes de string pra isso … apenas um Format ou coisa assim.

valeu

5 Respostas

richardpeder

smota:

da uma procurada na API sobre NumberFormat…la acredito que tenha algo para formatar numeros…nao que nesta classe esteja a solução, mas essa classe formata numeros.

Ate mais…

thiagorani

Ja tentou converter esse numero para Integer?

[]´s

smota

Não é possível converter para integer porque eu perderia a parte decimal, e essa não é a idéia. ex: 100.30 seria 100 e nao 10030 como esperado.

NumberFormat também não seria para esse caso porque ele (DecimalFormat mais precisamente) porque ele trabalha com Locales e não é possível (nao existe) usar um locale sem nada (ou existe?).

Eu esperava algo como o DateFormat que aceita uma máscara mas nao consegui achar nada ainda. (o DecilmaFormat tem máscara mas nao consegui dizer pra ele incluir os decimais sem o separador)

Obrigado

thiagorani

Voce tem um numero 100.30?
Voce quer transformar isso em 10030?
Nesse numero 100 é a parte inteira, e 30 a decimal.
Nao to entendend oq voce ta querendo fazer.
Da mais um luz ae.

[]´s

T

Bem, se o caso for apenas para o caso de números com ponto flutuante com 02 (DUAS) casas decimais significativas, porque não adotar a solução abaixo?..

private long floatToLong(float n){

x = (long)n * 100;

return x;

}
private float longToFloat(long n){

float x = float(n) / 100;

return x;

}

Será que ajuda?

Criado 26 de fevereiro de 2003
Ultima resposta 4 de mar. de 2003
Respostas 5
Participantes 4