Instanceof como posso usá-lo?

E aí galera?!

Já sei que o instanceof é um metodo de comparacao, mas queria saber se eu posso usá-lo assim:


if( vetor[i] instanceof Classe )
…aqui o programa executaria um outro comando…

ou eu teria que criar um outro metodo chamado “verifica” do tipo boolean que me retornasse true se vetor[i] pertencer à Classe e false caso contrario e aí fazer o seguinte:

if ( verifica( vetor[i] ) == true )
…executa comandos…

será que posso usar o primeiro tipo?
valew!

só por correção do termo :slight_smile: , instanceof não é método, é uma palavra-chave.

Opa, se pertencer a Classe? O que exatamente tu quer testar? Se o objeto instanciado no índice “i” do vetor extende ou implementa a Classe? Isso? Se sim, vc pode usar o instanceof sem problemas, é pra isto q ele serve :joia:

o instanceof eh um comando de comparaçao , ou seja pode ser utilizado em um if, ele veriffica se um objeto foi intanciado de uma classe ou de uma hierarquia de classe,

utlize do primeiro modo com o if,

ps: ele soh compara objeto com classse, e nao objeto com objeto

String str = "teste";

if(str instanceof String){
  System.out.println("Str é String");
}else{
  System.out.println("Str não é String");
}


if(str instanceof Integer){
  System.out.println("Str é Integer");
}else{
  System.out.println("Str não é Integer");
}

resultado:

Str é String
Str não é Integer

Apenas com o intuito de contribuir com os que estão se preparando para certificação: instanceof não é nem método, nem uma simples palavra-chave, nem tampouco um comando de comparação. Ele é um operador. :slight_smile: