Olá, estou fazendo uma calculadora para Android, porém estou com um problema com a exibição dos valores. Estou usando double como formato (para realizar as operações), porém quando o resultado é exibido ele é mostrado em .0 (ex: 1 + 1 = 2.0), tem como tirar essa casa decimal apenas quando for zero (se o resultado tiver casas decimais quero exibi-las) ?
Procurando sobre encontrei uma forma de “descobrir se é 0 ou não”:
// Inicio
if (edtValorExibido.getText().length() == 0)
{
edtValorExibido.setText("");
}
else
{
n1 = Double.parseDouble(edtValorExibido.getText() + “”);
subtrai = true;
edtValorExibido.setText(null);
if (n1 == Math.rint (n1))
{
// é .0
iN1 = (int)n1;
edtValorExibido.setText(null);
edtHistorico.setText(iN1 + " -");
}
else
{
// não é .0
edtValorExibido.setText(null);
edtHistorico.setText(n1 + " -");
}
// Fim
obs: esse é o bloco direcionado às subtrações.
Porém, quando uso esse bloco algumas operações ficam erradas, por exemplo, se realizo (1 + 1.5 = 2.5), (1 + 1 = 2), mas em valores específicos (como 2.5 + 2.5 = 0) há bugs e as vezes ele da uma resposta totalmente aleatória.
Há outra forma de exibir os números de forma “bonitinha” ?
Obrigado desde já
Veja se esse tópico te ajuda
1 curtida
Obrigado !!! Tinha feito uma “busca” e não encontrei esse tópico, desculpe-me pela redundância.
1 curtida