Olá. Antes de tudo peço desculpas por este post. Creio que já deve ter várias postagens similares, mas a minha dúvida é a seguinte: Como fazer várias formatações numéricas no mesmo programa.
Tenho um programa e quero mostrar as casas decimais (moedas) e alguns ordenadores que eu quero que apareçam com 2 casas antes da virgula “00”.
Vejam o código e me ajudem pfvr:
(uso DecimalFormat formatador = new DecimalFormat(“0.00”); = para fazer as casas decimais )
mas quero que essa “qtdeCds” fica com duas casas - hoje ele está assim:
Ex.: Você tem 2 CDs na sua coleção ------ quero que fique: Você tem 02 CDs na sua coleção
Já os preços estão acertados com 2 casas.
System.out.println(“Voce tem " + qtdeCds + " na sua coleção.”);
System.out.printf(“E gastou R$ " + formatador.format(totalCDs) + “,”);
System.out.printf(” e em média pagou: R$ " + formatador.format(precoMedio));
System.out.println(" por cd");
System.out.println("\n");
Obrigado (e desculpem se postei algo inconveniente.).
PapaiLu, a propriedade setMinimunIntegerDigits seta, como o nome diz, a quantidade minima de dígitos. É nesse momento que o estudo da documentação se torna importante, afinal, essa propriedade e muitas outras podem te ajudar. Dê uma olhada na documentação oficial do DecimalFormat, isso vai te ajudar muito nos estudos c:
Você definiu a quantidade como double?
Você criou outro decimal format ou esta reaproveitando outro que deixa com casas decimais?
DecimalFormat df = new DecimalFormat();
df.setMinimumIntegerDigits(2);
df.setMaximumFractionDigits(0);
System.out.println(df.format(5.00));//Passei double, mas vai imprimir 05