Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Trabalhando com interfaces

Estou trabalhando com interfaces, mas o meu código não está compilando na linha String comparacao = count == 2 ? "verdadeiro" : "false"; no console está esse erro The value of the local variable comparacao is not used. Mas não consigo entender, alguém pode me ajudar ?

public class Main {

    public static void main (String[] args) {

        Empresa emp = new Empresa();
        emp.setNome("Empresa 1");
        emp.setNumero(900000000);

        Empresa emp2 = new Empresa();
        emp2.setNome("Empresa 2");
        emp2.setNumero(90000000);

        int count = 1;

        String comparacao = count == 2 ? "verdadeiro" : "false";

        ClienteDAO dao = new ClienteOracleImpl();

        if(dao instanceof ClienteOracleImpl) {
            System.out.println("ok");
        }

        switch (count) {
        case 1:
            comparacao = "verdadeiro";
            break;
        case 2: 
            comparacao = "verdadeiro";
            break;
        default:
            comparacao = "false";
            break;
        }



}
}
1 resposta
solução!

Ola Caroline.

Não é um erro no codigo mas sim um aviso de que a variavel não esta sendo utilizada.

No caso quando ela aparece dentro do switch ela não faz nada porque jã foi definida como "verdadeiro" ou "falso" antes.

Uma opção seria retirar os valores da variavel: String comparacao;

Ou realmente utilizar a variavel em algum ponto do codigo por exemplo:

switch (count) {
        case 1:
            comparacao = "verdadeiro";
            System.out.println(comparacao);
            break;
        case 2: 
            comparacao = "verdadeiro";
            System.out.println(comparacao);
            break;
        default:
            comparacao = "false";
            System.out.println(comparacao);
            break;
        }

Ou simplesmente ignorar o warning (não seria a melhor pratica).