ERRO: void cannot be converted to String

Recebo esse erro mas não declarei void no meu método: impressao da classe Logic. Não entendi o que está acontecendo alguém pode ajudar?

class Logic {
    public static String impressao (String mensagem) {
        String print = System.out.println(mensagem);
        return print;
    }
}

public class Teste {
    public static void main (String[] args) {
        int numero = 4;
        int item = 1;
        String inicial = "Número inicial = "+numero; 
        String msg = String.format("\nItem: %s / Numero: %s", item, numero);
        while (item < 35) {
            numero += 5;
            Logic.impressao(msg);
            numero += 1;
            item ++;
            Logic.impressao(msg);
            numero -= 4;
            item ++;
            Logic.impressao(msg);        
        }    
    }
}

Essa linha não faz sentido, você está criando uma variável do tipo String e tentando armazenar o retorno do método println que é void.

Provavelmente deveria ser apenas:

System.out.println(mensagem);

e sem o return no método impressão.

Sua solução funcionou. A explicação é que System é um método que não pode ser instanciado como String pelo que entendi.

Então fazendo o que você sugeriu quase funcionou, também me confundi com relação ao tipo de retorno declarado no método impressao da minha classe Logic

class Logic {
    public static void impressao (String mensagem) {
        System.out.println(mensagem);
    }
}

public class Teste {
    public static void main (String[] args) {
        int numero = 4;
        int item = 0;
        String inicial = "Número inicial = "+numero; 
        System.out.println(inicial);
        while (item < 36) {
            String msg = String.format("\nItem: %s / Numero: %s", item, numero);
            numero += 5;
            Logic.impressao(msg);
            numero += 1;
            item ++;
            Logic.impressao(msg);
            numero -= 4;
            item ++;
            Logic.impressao(msg);        
        }    
    }
}
1 curtida