No dudes en compartir nuestros post y códigos en tus redes sociales, apóyanos para hacer crecer nuestra comunidad.
Solución:
return
es una declaración. Las declaraciones no se pueden usar dentro de expresiones de esa manera.
Porque una operación ternaria es una expresión y no puede usar declaraciones en expresiones.
Sin embargo, puede usar fácilmente un operador ternario en una devolución.
return sum > 0 ? 1 : 0;
O como señaló DrDipShit:
return sum > 0;
El operador ternario trata con expresiones, pero return
es una declaración.
La sintaxis de la return
declaración es
return
expr;
La sintaxis del operador condicional ternario es
expr1?
expr2:
expr3
Entonces puede conectar una invocación del operador ternario como el expr en un return
declaración. Pero no puede enchufar un return
declaración como expr2 o expr3 de un operador ternario.
La expresión ternaria se parece mucho a una if
declaración, pero no es un reemplazo exacto para una if
declaración. si quieres escribir
if(sum > 0)
return 1;
else return 0;
Puedes escribirlo como un true if
declaración, pero no se puede convertir a usar ? :
sin reorganizarlo un poco, como hemos visto aquí.
Si conservas alguna sospecha o capacidad de refinar nuestro sección te recordamos escribir una referencia y con deseo lo ojearemos.