Ayuda con código

xlxscorpioxlx
05 de Octubre del 2008
Que tal, tengo el siguiente código de ejemplo, pero no entiendo el final de éste método cuando va a retornar:

private Ciudad localizarAnterior( String nombre )
{
Ciudad anterior = null;
Ciudad actual = ciudad1;

while( actual != null && !actual.darNombre( ).equals( nombre ) )
{
anterior = actual;
actual = actual.darSiguiente( );
}
//AQUÍ ES DONDE NO ENTIENDO
return actual != null ? anterior : null;
}

Alguien sabe que significa el signo "?" y los dos puntos en el método

yomismo
05 de Octubre del 2008
Eso es un operador condicional, te dice que si la variable actual es diferente de null, se retorna el valor de la variable "anterior" y si no es diferente de null se retorna null. Mirate los operadores condicionales

xlxscorpioxlx
05 de Octubre del 2008
Que clase de condicionales son estos, tienen un nombre especial? porque no son como el "if", "else", "for" o "while" y donde hay info de cómo manejarlos?