Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

ericj

[Resolvido] formatação de numero em java

Recommended Posts

package br.ucb.java;

import javax.swing.JOptionPane;
import java.text.Format;     //tentei usar essa mais não deu certo 

import java.text.DecimalFormat; //e essa também não deu certo 

public class Exercicios2 {

private double salario;
private int cargo;

public void entradaDdados() {
	cargo = Integer
			.parseInt(JOptionPane
					.showInputDialog("Entre com o seu cargo:\n 1-Gerente\n 2-Engenheiro\n 3-Técnico\n 4-Outros"));
	if (cargo < 5) {
		salario = Double.parseDouble(JOptionPane
				.showInputDialog("Entre com o seu salario :"));



	}
}

public void calcular() {

	switch (cargo) {

	case 1:
		double reajust = salario + (salario * 0.1);

		//String reajustF = String.format("%2.f",reajust);//import java.text.Format;NÃO DEU CERTO 

		 //DecimalFormat df = new DecimalFormat("0.00"); //import java.text.DecimalFormat; NAO DEU CERTO  
	      //  df.format(reajust);  

		JOptionPane.showMessageDialog(null, "O seu salario atual é : "
				+ salario);
		JOptionPane.showMessageDialog(null,
				"O novo salário do Gerente REAJUSTADO É IQUAL: " + reajust );

		break;

 

 

GENTE ESSE CODIGO É SO UMA PARTE DO CODIGO QUE EU ESTOU FAZENDO JÁ OLHEO VARIOS EXEMPLOS

NÃO DA CERTO PODEM ME AJUDAR A FORMATA PARA DUAS CASAS DECIMAIS NUNCA USEI ESSAS BIBLIOTECAS

DE FORMATAÇÃO USEI import java.text.Format;E import java.text.DecimalFormat; MAIS NÃO ESTA SAINDO COM 2 CASAS DEC

Compartilhar este post


Link para o post
Compartilhar em outros sites
DecimalFormat df = new DecimalFormat("#.##");

Compartilhar este post


Link para o post
Compartilhar em outros sites

DecimalFormat df = new DecimalFormat("#.##");

 

public void calcular() {

	switch (cargo) {

	case 1:
		double reajust = salario + (salario * 0.1);

		//String reajustF = String.format("%.2f",reajust);
		DecimalFormat df = new DecimalFormat("#.##");   

            df.format(reajust);   

	    // Float valor = new Float(reajust);   
	    // System.out.println(df.format(valor));  


		JOptionPane.showMessageDialog(null, "O seu salario atual é : "
				+ salario);
		JOptionPane.showMessageDialog(null,
				"O novo salário do Gerente REAJUSTADO É IQUAL: " + reajust );
		break;

 

mesmo com esse formato DecimalFormat df = new DecimalFormat("#.##"); da erro

esto digitando para text o numero 10.26 mais a saida do reajust é iqual a 11.28600025177002

 

obrigado!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Voce nao esta usando direito. Faz assim:

double reajust = salario + (salario * 0.1); 
DecimalFormat df = new DecimalFormat("#.##");    
JOptionPane.showMessageDialog(null, "O seu salario atual é : " + salario); 
JOptionPane.showMessageDialog(null, "O novo salário do Gerente REAJUSTADO É IQUAL: " + df.format(reajust));

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.