Problemas com Collection

Pessoal estou estudando pela API do java… as collections…
Estou na classe Iterator com o seguinte código…

public int indexOf(E o) {
for (ListIterator i = listIterator(); i.hasNext(); )
if (o==null ? i.next()==null : o.equals(i.next()))
return i.previousIndex();
return -1; //Object não encontrado.
}

Não estou entendendo direito ele… por causa do operador " ? " alguem pode dar um help… please…

Obs: Caso alguem puder indicar algum material bom sobre collections eu agradeço

Thanks

Esta linha

if (o==null ? i.next()==null : o.equals(i.next())) 

contém um operador ternário, que funciona assim:

(condicao teste)? (faça isso se verdadeiro) : (faça isso se for falso)

Página de referência:

http://www.jspbrasil.com.br/jsp/tutoriais/tutorial.jsp?idTutorial=001_006

O Operador ‘?’ é um operador ternário.

neste caso ele faz o seguinte:

Sacou? :thumbup:

Amigo, o operador ? é utilizado para fazer cláusulas if/else de maneira resumida…
A estrutura é mais ou menos assim

<tal coisa é verdadeira> ? <se sim faça isso> : <ja que é nao, faça isso>

Deu pra entender?!

Valeu pessoal… agora entendi sim…

brigadão

Abs