Galera é o seguinte eu tenho que fazer um programa com um menu no inicio, e com umas opções:
olhe o exercicio:
Desenvolva um programa em Java que controle informações como nome, idade, sexo, salário de N funcionários de uma empresa.
O programa deve permitir através de um menu as seguintes opções:
1) Cadastrar (inserir) os dados de todos os funcionários;
2) Listar os dados de todos os funcionários;
3) Listar os dados de determinado funcionário. A opção deve permitir que o usuário digite o nome do funcionário que terá os dados listados. (pesquisa)
4) Média salarial
5) Nome dos funcionários com salário acima da média salarial. Observar para não calcular a média salarial novamente. Obedecer o seguinte formato de impressão:
Nome Salário Média Salarial
Ana R$ 1500,00 R$ 1000,00
Carlos R$ 2000,00 R$ 1000,00
Eu não sei se posso usar o for ou while ou if dentro do case e agora me ajudem,
Obrigado
Vc não vai usar laço dentro dos cases do switch, é o contrário, vc vai usar switch dentro de um laço! Vc pode usar um while ou do-while, como o KKnd falou…
Vc cria um método que simplesmente imprime na tela o menu, com um número para cada uma delas.
Dentro do seu loop vc lê a opçào digitada pelo usuário e joga ela no switch. Para cada valor, o switch faz uma coisa diferente. Crie um método para cada funcionalidade do sistema e chame estes métodos dentro dos cases.
Até pode, mas NORMALMENTE vc usa o for quando sabe exatamente quantas vezes o laço deverá ser executado. A idéia do while é pra quando vc não tem essa informação…
Vc até pode usar um for do tipo:
int opcao; //se opcao for 0 (zero) o loop deve ser encerrado, por exemplo
//mais codigo...
for(int i = 0; opcao != 0; i++){
//faça o que deve ser feito
}
Mas fica muito feio e confuso… Eu prefiro while nestes casos.
boolean sair = false;
int choice = -1;
while(!sair)
{
montaMenu();
choice = sc.nextInt(); //usa o scanner para pegar a escolha...
switch(choice)
{
case 1:
//faz oque tiver que fazer...
break;
case 2:
//faz oque tiver que fazer...
break;
case 3: //ajusta para sair
sair = true;
break;
}
}
sair = false;//Para o caso de ser um menu dentro de outro e vc não ter que criar varios booleans para sair.