noviembre 18, 2011

Operador ? ( y no es pregunta )

Al operador cuando lo conocí me decían que se le decía el "if de una linea" y esto como que me generaba algunas dudas y pues después de unos ejercicio me di cuenta de que no es muy difícil este operador es como el if pero el ? devuelve un valor dado no una expresión correcta, asi en pocas palabras la declaración de este operador seria así:
variableQueSeLeAsignaraElValorDevuelto = condicion?valorSiEsVerdadera:valorSiEsFalsa;

Para dejar esto mas en claro hice este pequeño programa que es prácticamente igual al de mi publicación anterior solo le agregue unas cositas casi nada chequenlo:

public class IfDeUnaLinea
{
 public static void main (String[] args)
 {
  //declaramos dos variables de tipo boolean
  boolean esMayorDeEdad, esMenorDeEdad;
  
  //declaramos e inicializamos una variable de tipo int
  int edad = 17;
  
  esMayorDeEdad = (edad >= 18)? true:false;
  esMenorDeEdad = !esMayorDeEdad;
  
  System.out.println(esMayorDeEdad);
  System.out.println(esMenorDeEdad);
 }
}

como vemos en la linea 17 esta la utilización del ? si la condición se cumple a "esMayorDeEdad" se le asignara true, de lo contrario se le asignara falsa, no solo puede devolver valores booleanos si no que también int o cualquier otro tipo.
Loading...