Jump to content

Recommended Posts

Posted
System.out.println("Profissão(1 - Gestor, 2 - Recepcionista, 3 - Professor, 4 - Manutenção: ");
     int idProfissao = sc.nextInt();
     Colab.setIdProfissao(idProfissao);
     switch(idProfissao){
         case 1: Colab.getProfissao() = 'Gestor'; break;
         case 2: Colab.getProfissao() = 'Recepcionista'; break;
         case 3: Colab.getProfissao() = 'Professor'; break;
         case 4: Colab.getProfissao() = 'Manutenção'; break;
         default: Colab.getProfissao() = ''; break;
     }

ERRO: unexpected type

  required: variable

  found:    value

unclosed character literal

not a statement

unclosed character literal

Sou nova em JAVA e já vi que switch com strings só no Java7...assim sendo, como posso resolver este problema??

Basicamente estou a tentar registar um colaborador. vou dar-lhe um valor para que a profissao seja preenchida, isto pq vou precisar de usar os colaboradores diferentes em metodos diferentes...dai usar o idProfissao...

depois preciso preencher a profissao como string e mostrar logo no ecra. tudo isto em console.

Obrigada 🙂

Posted

O problema não é o switch, é estares a atribuir a um valor resultante de um método uma coisa que suponho que seja uma string. Ex:

Colab.getProfissao() = 'Gestor'

As strings são delimitadas por aspas, não por plicas. E não podes fazer aquela atribuição porque não estás a atribuir o valor a uma variável mas sim a um valor resultante da invocação do método getProfissao().

Posted
String Profissao = "";
     switch(idProfissao){
         case 1: Profissao = "Gestor"; break;
         case 2: Profissao= "Recepcionista"; break;
         case 3: Profissao = "Professor"; break;
         case 4: Profissao = "Manutenção"; break;
         default: Profissao = ""; break;
     }
     Colab.setProfissao(Profissao);

Resolvi o assunto assim 🙂

Posted

String Profissao = "";
     switch(idProfissao){
         case 1: Profissao = "Gestor"; break;
         case 2: Profissao= "Recepcionista"; break;
         case 3: Profissao = "Professor"; break;
         case 4: Profissao = "Manutenção"; break;
         default: Profissao = ""; break;
     }
     Colab.setProfissao(Profissao);

Resolvi o assunto assim 😄

Assim também deve dar:

switch(idProfissao){
    case 1: Colab.setProfissao("Gestor"); break;
    case 2: Colab.setProfissao("Recepcionista"); break;
    case 3: Colab.setProfissao("Professor"); break;
    case 4: Colab.setProfissao("Manutenção"); break;
    default: Colab.setProfissao(""); break;
}

Não me responsabilizo por qualquer dano ocorrido no seguimento dos meus conselhos. Prontos, a minha pessoa está oficialmente protegida legalmente 😄

Posted

Boas

em java assim como em C e outras linguagens baseadas em C as strings têm de ser iniciadas e terminadas com "" e não com '' as plicas servem apenas para caracteres

char ch = 'C';
String str = "String";

A única linguagem que conheço que não segue estas convenções é prai PHP

Cumprimentos,

Eduardo Oliveira

Posted

A única linguagem que conheço que não segue estas convenções é prai PHP

SQL tambem. Pelo menos o da Microsoft e o MySQL querem strings com plicas ( nunca vi um Standard do ANSI SQL: alguem tem um link? )

select * from user where name like '%john%doe%'

What have you tried?

Não respondo a dúvidas por PM

A minha bola de cristal está para compor; deve ficar pronta para a semana.

Torna os teus tópicos mais atractivos e legíveis usando a tag CODE para colorir o código!

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.