É possivel chamar um metodo dentro de um System.out.println?

7 respostas
cristian.ferreira

Pessoal estou com uma duvida, gostaria que vocês me ajudassem,
segue a baixo minha classe e seu métodos.

gostaria de saber se é possivel chamar um método dentro de outro método em um System.out.println?

Agradeço a todos que colaborarem…

public class funcionario {

//Variaveis

String nome;

String departamento;

String RG;

double salario;

boolean ativo;
void bonifica(double aumento){
	this.salario = this.salario + aumento;
}
==>	void demite(){

if(ativo == true){

System.out.println(Funcionário Ativo);
}
	else{
		System.out.println("Funcionário Demitido");
	}
}// If e Else

void imprimeDados(){
	System.out.println("Nome :"+ this.nome);
	System.out.println("Departamento :"+ this.departamento);
	System.out.println("RG :"+ this.RG);
	System.out.println("Salario :"+ this.salario);

====> System.out.println(“Status”+ this.demite()); ===== Erro correspondente( The operator + is undefined for the argument type(s) String, void)

}

}// Fim da Classe

7 Respostas

zicky23

dai amigo

se vc qr mostrar um método no System.out.print para verificá-lo, entao tente fazer um Debug, mto mais fácil de ver onde ta o erro.

até+

malokas

Muda o retorno do metodo demite para String, e coloca pra retornar a String que você quer.

lucasgarofolo

tem como retornar mensagem ?
acho qe não hem .

malokas

lucasgarofolo:
tem como retornar mensagem ?
acho qe não hem .

Como assim?

ele pode fazer assim

String demite() {
	if (ativo == true) {
		return "Funcionário Ativo";
	} else {
		return "Funcionário Demitido";
	}
}
lucasgarofolo

realmente, @malokas, matou a charada !

ViniGodoy

Ou ainda:

public String demite() { return "Funcionário " + (ativo ? "Ativo" : "Demitido"); }

cristian.ferreira

Muito obrigado pessoal, valeu pela dica deu certo.

Criado 31 de março de 2011
Ultima resposta 1 de abr. de 2011
Respostas 7
Participantes 5