Switch Case Ajuda

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

A estrutura vai ficar mais ou menos assim:

do
{
       opcao = entrada....
       
       switch(opcao)
      {
            case 1: Inserir; break;
            case 2: Tal; break;
       }

}
while(opcao != 0)

Foi mal irmaum mais naum entendi??

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.

ah entendi mais alem do while eu posso usar for

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.

é verdade vou tenta aqui qualquer coisa eu apelo ai para vocês blz

exatamente cassio… só para complementar
Essa técnica de controle de loop (e a opção for zero) se chama controlado por sentinela.

Quando vou fazer um menu, uso algo do tipo…

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.

não entendi bem o seu texto, mas deve ser isso.