Preencher Variavel Double com 00.000

2 respostas
lucaslgf2

Tenho uma Variável do Tipo Double e preciso armazenar nela um numero decimal no seguinte formato: "00.000" (2 Inteiros e 3 Casas Decimais).
Estou usando o DecimalFormat, porem ao converter a String 02,28o em Double ela vira 2,28.
Existe alguma forma de armazenar na Variavel Double 02.280 ao invés de 02.28??

public class Main {
	public static DecimalFormat df = new DecimalFormat("00.000");
	static String StrAux;
	static double PtsJogador;

	
	public static void main(String[] args) {
		PtsJogador = (2*0.9 + 4*0.12); //Resultado = 2,28 ou 02,280
		StrAux = df.format(PtsJogador);
		System.out.println(StrAux);
        
		StrAux = StrAux.replace(",", ".");
		PtsJogador = Double.parseDouble(StrAux);
        System.out.println(PtsJogador);
	}
}

2 Respostas

pmlm

Em matemática, 2.280 e 2.28 são a mesma coisa.
Se queres apresentar ao utilizador com mais ou menos casas decimais, deves formatar antes de apresentar.

matheuslmota

Formatação e armazenamento são coisas distintas. Você não trunca a quantidade de digitos de um float no armazenamento e sim na formatação, que é o que você fez quanto usou o DecimalFormat. E como foi dito, 2.280 == 2.28. Se quiser imprimir como 2.280, formate o número então.

Criado 15 de junho de 2013
Ultima resposta 15 de jun. de 2013
Respostas 2
Participantes 3