AD

¿Ya dominas lo básico? Un curso estructurado de Objective-C es la vía rápida para dar el salto.

Ver cursos de Objective-C en Udemy

Enlace de afiliado. No te cuesta nada extra.

🍎Lecciones de Objective-C
Lección 15 / 68

El operador ternario

En esta lección escribirás un condicional sencillo en una sola línea.

La forma es condición ? valor_si : valor_no. Es la versión corta de un if/else que solo elige entre dos valores.

El código de ejemplo decide si alguien es mayor o menor de edad.

Objective-C tiene además una variante propia muy usada: omitir el valor del medio. a ?: b significa «a si no es nulo o cero, y si no, b». Es lo que verás para poner valores por defecto, y equivale al operador Elvis de otros lenguajes.

Encadenar ternarios es legal y difícil de leer. En cuanto hay más de dos casos, un if se entiende mejor.

Con objetos hay que tener cuidado con qué cuenta como falso: nil lo es, pero un NSNumber que contiene 0 no, porque el objeto existe. @0 ?: @5 devuelve @0. Es una distinción que produce fallos difíciles de ver.

📖 Código de referencia
✍️ Tu código
Escribe tu código y pulsa «Ejecutar»

🧪 Este sitio no puede compilar ni ejecutar Objective-C directamente, así que comprueba al instante si lo que escribiste coincide con el código de referencia (la corrección ocurre por completo en tu navegador; no se envía nada a ningún servidor).

🔗 El mismo tema en otros lenguajes

Mira cómo se escribe lo mismo en otro lenguaje.

Espacio publicitario (banner)
Espacio publicitario (en el artículo)