Digite o nome do empregado: Luis Paiva
Digite as horas trabalhadas: 40
Digite o salario-hora: 10
Salario bruto: R$400.0
Digite o nome do empregado: Digite as horas trabalhadas: Luis
Exception in thread “main” java.util.InputMismatchException
at java.util.Scanner.throwFor(Scanner.java:819)
at java.util.Scanner.next(Scanner.java:1431)
at java.util.Scanner.nextInt(Scanner.java:2040)
at java.util.Scanner.nextInt(Scanner.java:2000)
at Salarios.Salarios.main(Salarios.java:30)
Aparece os dois prompts na mesma linha e qdo digito Luis deu esse erro.
Help??
Substitua o: nomeEmpregado = input.nextLine();
por nomeEmpregado = input.next();
Esse erro é que ele está pulando a entrada do nome na segunda vez que passa pelo loop e pedindo direto o valor, e neste valor vc está entrando com um campo alfanumérico.
Faz um teste: digita na primeira vez no campo valor um texto qualquer que vc vai ver que esse erro ocorrerá, pois no valor vc pega com input.nextInt() e input.nextDouble()
public class AccountTest
{
// método principal inicia a execução do aplicativo Java
public static void main( String args[] )
{
Account account1 = new Account( 50.00 ); // cria o objeto Account
Account account2 = new Account( -7.53 ); // cria o objeto Account
// exibe saldo inicial de cada objeto
System.out.printf( "account1 balance: $%.2f\n",
account1.getBalance() );
System.out.printf( "account2 balance: $%.2f\n\n",
account2.getBalance() );
// cria Scanner para obter entrada a partir da janela de comando
Scanner input = new Scanner( System.in );
double depositAmount; // quantia de depósito lida a do usuário
System.out.print( "Enter deposit amount for account1: " ); // prompt
depositAmount = input.nextDouble(); // obtém a entrada do usuário
System.out.printf( "\nadding %.2f to account1 balance\n\n",
depositAmount );
account1.credit( depositAmount ); // adiciona o saldo de account1
// exibe os saldos
System.out.printf( "account1 balance: $%.2f\n",
account1.getBalance() );
System.out.printf( "account2 balance: $%.2f\n\n",
account2.getBalance() );
System.out.print( "Enter deposit amount for account2: " ); // prompt
depositAmount = input.nextDouble(); // obtém a entrada do usuário
System.out.printf( "\nadding %.2f to account2 balance\n\n",
depositAmount );
account2.credit( depositAmount ); // adiciona ao saldo de account2
// exibe os saldos
System.out.printf( "account1 balance: $%.2f\n",
account1.getBalance() );
System.out.printf( "account2 balance: $%.2f\n",
account2.getBalance() );
} // fim de main
} // fim da classe AccountTest
Estou tentando compilar este código, porém ele demonstra uma série de erros como por exemplo:
cannot resolve symbol class Scanner - line 3
cannot resolve symbol method printf (java.lang.String,double) - line 14
cannot resolve symbol method printf (java.lang.String,double) - line 16
cannot resolve symbol class Scanner - line 20
cannot resolve symbol class Scanner - line 20
cannot resolve symbol method printf (java.lang.String,double) - line 30
cannot resolve symbol method printf (java.lang.String,double) - line 32
Tentei de tudo já, mas não consigo compilar este código.
public static void main(String args[]){
int opçao = 0;
Scanner c = new Scanner( System.in );
while (opçao != 1)
{
System.out.println(" Menu");
System.out.println("1 - Gato");
System.out.println("2 - Passaro");
System.out.println("3 - Sair");
System.out.println("\n");
System.out.print("Escolha a opçao do menu:");
opçao = c.nextInt();
System.out.println("\n");
}
if(opçao == 1)
{
Gato a1 = new Gato(01,"Todinho",15,420,"wiscas");
System.out.println(a1);
}
if(opçao == 2)
{
Passaro a2 = new Passaro(02,"Rock Balboa",5,1500,true);
System.out.println(a2);
}
}
}
Fiz este programa principal, e esta dando erro de “cannot resolve symbol class Scanner”, não sei solucionar.Gostaria que vocês me dissessem a solução deste problema.Obrigado.
tudo bem,
estou no trabalho no momento e não estou com acesso ao interpretador.Chegando em casa irei rever o programa.
Obrigado pela ajuda.
Agora, resolver o problema…foi um modo de dizer, o que eu queria era uma orientação na solução do programa.
Acredito que não foi correto o modo no qual vocês me trataram.