I'm having problems with data entries using Scanner with JOptionPane working fine.
Exception in thread "main" java.util.NoSuchElementException at java.util.Scanner.throwFor(Unknown Source) at java.util.Scanner.next(Unknown Source) at java.util.Scanner.nextInt(Unknown Source) at java.util.Scanner.nextInt(Unknown Source) at pkgClientesPedidosDiogoVinicius.TesteClientesPedidos.menu(TesteClientesPedidos.java:43) at pkgClientesPedidosDiogoVinicius.TesteClientesPedidos.main(TesteClientesPedidos.java:18)
import java.io.IOException;
import java.util.Scanner;
public class TesteClientesPedidos {
static int opcao;
public static void main(String[] args) throws IOException {
menu();
}
static void menu() throws IOException {
Scanner leitura = new Scanner(System.in);
do {
System.out.println("PROGRAMA CLIENTES/PEDIDOS - OPÇÕES\n");
System.out.println("----------------------------------\n");
System.out.println("1 - Cadastrar Gerente\n");
System.out.println("2 - Cadastrar Vendedor\n");
System.out.println("3 - Cadastrar Técnico\n");
System.out.println("4 - Mostrar dados dos funcionarios(Gerente/Vendedor/Técnico\n");
System.out.println("5 - Cadastrar Item de Pedido\n");
System.out.println("6 - Cadastrar Pedido\n");
System.out.println("7 - Mostrar Dados de Pedido e Item de Pedido\n");
System.out.println("8 - Cadastrar Gerente Administrativo\n");
System.out.println("9 - Cadastrar Gerente Financeiro\n");
System.out.println("10 - Mostrar dados de Gerente Administrativo e Financeiro\n");
System.out.println("11 - Mostrar cálculo do salário para cada funcionario (Gerente/Vendedor/Técnico\n");
System.out.println("12 - Sobre\n");
System.out.println("13 - Encerrar programa\n");
System.out.println("Informe a opção:");
opcao = leitura.nextInt();
switch (opcao) {
case 1:
cadastrarGerente();
System.out.println(">>PROGRAMA");
break;
case 13:
System.out.println(">>PROGRAMA FINALIZADO");
break;
}
} while (opcao != 13);
leitura.close();
}
public static void cadastrarGerente() {
String nome;
int matricula;
String telefone;
String email;
String cidade;
String estado;
double salario;
double taxaVenda;
Scanner entrada = new Scanner(System.in);
System.out.println("CADASTRAR GERENTE\n");
System.out.println("Nome:........:");
nome = entrada.nextLine();
System.out.println("Matricula:...:");
matricula = entrada.nextInt();
System.out.println("Telefone:....:");
telefone = entrada.next();
System.out.println("Cidade:......:");
cidade = entrada.nextLine();
entrada.next();
System.out.println("E-mail:......:");
email = entrada.nextLine();
entrada.next();
System.out.println("Salário:.....:");
salario = entrada.nextDouble();
System.out.println("Estado:......:");
estado = entrada.nextLine();
entrada.next();
Gerente g1 = new Gerente(nome, matricula, telefone, email, cidade, estado, salario);
try {
System.out.println("Taxa Venda:..:");
taxaVenda = entrada.nextDouble();
g1.setTaxaVenda(taxaVenda);
} catch (IllegalArgumentException e) {
System.out.println(e.getMessage());
}
entrada.close();
}
}