Test Foro de elhacker.net SMF 2.1

Programación => Programación General => Java => Mensaje iniciado por: JonaLamper en 6 Noviembre 2016, 13:41 PM

Título: Duda en una condición if
Publicado por: JonaLamper en 6 Noviembre 2016, 13:41 PM
Buenas, alguien me podría confirmar si esto:

Código (java) [Seleccionar]
return this.name + (name.getValueArg() > 0 ? (" " + param) : "");

es lo mismo que esto:

Código (java) [Seleccionar]
if(this.name + (name.getValueArg() > 0))
return " " + param;
else
return "";


Muchas gracias  ;D
Título: Re: Duda en una condición if
Publicado por: ivancea96 en 6 Noviembre 2016, 15:17 PM
No. Fíjate en los paréntesis.

El operador ternario ?: está entre paréntesis. El retorno será "this.name" + (el resultado del operador ternario)

Código (java) [Seleccionar]
// return this.name + (name.getValueArg() > 0 ? (" " + param) : "");

if(name.getValueArg() > 0)
    return this.name + " " + param;
else
    return this.name;