Duvida me ajudem!

4 respostas
T

Pessoal estou com um problema, estou fazendo este códio abaixo:

package testeAeroporto;

import javax.swing.JOptionPane;
import java.util.Scanner;

import aeroporto.Aeroporto;

public class TesteAeroporto {

	public static void main(String[] args) {
		
		Scanner leitor = new Scanner (System.in);
		
		Aeroporto AeroCps = new Aeroporto ("Aeroporto Viracopos", "Campinas", "São Paulo", "VCP");
		
		Aeroporto Aero1 = new Aeroporto ();
		Aeroporto Aero2 = new Aeroporto ();
			
		AeroCps.setTaxaEmbarqueNac(55.00);
		AeroCps.setTaxaEmbarqueInt(85.00);
			
		System.out.println("Nome do aeroporo: "+ AeroCps.getNome());
		System.out.println("Cidade do aeroporo: "+ AeroCps.getCidade());		
		System.out.println("Região de abrangência do aeroporo: "+ AeroCps.getRegAbrangencia());		
		System.out.println("Código IATA do aeroporo: "+ AeroCps.getIata());
		System.out.println("Taxa de Embarque Nacional do Aeroporto: "+ AeroCps.getTaxaEmbarqueNac());		
		System.out.println("Taxa de embarque Internacional do Aeroporto"+ AeroCps.getTaxaEmbarqueInt());
		
		System.out.println("------------------------------------------------------------------");
		
		System.out.println("\nDigite o nome do Aeroporto: ");
		String nome = leitor.nextLine();
		Aero1.setNome(nome);
		
		System.out.println("Digite a cidade do Aeroporto: ");
		String cidade = leitor.nextLine();
		Aero1.setCidade(cidade);
		
		System.out.println("Digite o código IATA do Aeroporto: ");
		String codIATA = leitor.nextLine();
		Aero1.setIata(codIATA);
		
		System.out.println("Digite a região de abrangência do Aeroporto: ");
		String regAbrangencia = leitor.nextLine();
		Aero1.setRegAbrangencia(regAbrangencia);
		
		System.out.println("Digite a Taxa de Embarque Nacional: ");
		double taxaEmbarqueNac = leitor.nextDouble();
		Aero1.setTaxaEmbarqueNac(taxaEmbarqueNac);
		leitor.nextDouble();
		
		System.out.println("Digite a Taxa de Embarque Internacional: ");
		double taxaEmbarqueInt = leitor.nextDouble();
		Aero1.setTaxaEmbarqueInt(taxaEmbarqueInt);
		leitor.nextDouble();
		
		
		Aero2.setNome(JOptionPane.showInputDialog(null, "Digite o nome do aeroporto", "Nome do Aeroporto", JOptionPane.INFORMATION_MESSAGE));
		Aero2.setCidade(JOptionPane.showInputDialog(null, "Digite a cidade do aeroporto", "Cidade do Aeroporto", JOptionPane.INFORMATION_MESSAGE));
		Aero2.setIata(JOptionPane.showInputDialog(null, "Digite o código IATA do aeroporto", "Código IATA do aeroporto", JOptionPane.INFORMATION_MESSAGE));
		Aero2.setRegAbrangencia(JOptionPane.showInputDialog(null, "Digite a região abrangente", "Região abrangente", JOptionPane.INFORMATION_MESSAGE));
		
		String taxas;
		double taxaEmbNac, taxaEmbInt;
		
		taxas = (JOptionPane.showInputDialog(null, "Digite a taxa de Embarque Nacional", "Taxa de Embarque Nacional", JOptionPane.INFORMATION_MESSAGE));
		taxaEmbNac = Double.parseDouble(taxas);
		
		taxas = (JOptionPane.showInputDialog(null, "Digite a taxa de Embarque Internacional", "Taxa de Embarque Internacional", JOptionPane.INFORMATION_MESSAGE));
		taxaEmbInt = Double.parseDouble(taxas);
	}

}

Mas exibe apenas as informações atribuidas.
As janelas JOptionPane não esta sendo exibida, porque? apenas a parte de digitação e ainda vai até o código: System.out.println("Digite a Taxa de Embarque Nacional: "), depois dai não funciona nada.
Valew galera.

4 Respostas

ViniGodoy

Você percebeu que na linha 48 e na 50 você está chamando nextDouble()?

Outra coisa, quando se lê do console, o ideal é usar somente o nextLine().

E, por favor, dê títulos descritivos aos seus tópicos. Esse título que você deu não descreve em nada sua dúvida.

T

Obrigado Vini, me desculpe pelo não título.

O que esse nextLine faz, com relação ao nextDouble, qual a diferença entre eles?

ViniGodoy

O nextLine() lê do console até que o enter seja pressionado. O nextDouble() procura só pelo double e, por isso, pode deixar lixo no seu Scanner (a quebra de linha), e você acabar fazendo leituras que não surtem efeito algum.

De qualquer forma, seu problema parece ser estar fazendo duas leituras seguidas, e nem perceber que fez isso.

T

Então Vini.
Ele faz uma leitura com atribuição já, exibe na tela.
Faz uma segunda leitura mas com digitação no console do compilador.
E a última envolvendo o JOption.
Lembrando que esse é um exercício da faculdade.
Vou mostrar a ela pra ver se realmente é isso que ela quer.

Você acha que algo esta errado?

Obrigado.

Criado 7 de abril de 2013
Ultima resposta 8 de abr. de 2013
Respostas 4
Participantes 2