SlideShare una empresa de Scribd logo
1 de 41
Capítulo 4 - Operadores
Cubre el objetivo:

7.6 Write code that correctly applies the appropriate operators including
assignment operators (limited to: =, +=, -=), arithmetic operators (limited to:
+, -, *, /, %, ++, --), relational operators (limited to: <, <=, >, >=, ==, !=), the
instanceof operator, logical operators (limited to: &, |, ^, !, &&, ||), and the
conditional operator (? :), to produce a desired result. Write code that
determines the equality of two objects or two primitives.
   Aunque ya se vio la mayoría de las implicaciones
    de usar el signo = en el capítulo pasado, los
    puntos a destacar son:

       Cuando se asigna un primitivo hay que tener en
        cuenta el tamaño, debe saber cuando el casteo debe
        ser implícito o explícito, y cuando ocurre un
        truncamiento de datos

       Recuerde que una variable de referencia no es un
        objeto, y que el símbolo = no es lo mismo que un
        método get.

       Cuando se asigna una variable de referencia importa
        el tamaño, es decir si el objeto pertenece a una clase
        padre, a una subclase, a una interface, o a un array.
 Existenoperadores compuestos con el
 símbolo igual, estos operadores sirven para
 acortar las líneas de código.


      y = y - 6;                  y -= 6;



    x = x + 2 * 5;              x += 2 * 5;
 Existen 6 operadores relacionales (<, <=, >, >=,
  ==, and !=). Y sirven para comparar variables.
 El uso de estos operadores siempre dan como
  resultado un booleano, por lo tanto es muy
  común usarlo en las sentencias if.

                                                   Animal = unknown



                                                   Animal = elephant

                                                             Animal = gray elephant



                                                             Animal = gray elephant


                   The animal is a gray elephant
   A veces suele ponerse algo como esto




   El if no tiene una comparación, es decir no se
    esta comparando si el valor de b es true o false,
    si no que se esta asignando a b true, este tipo de
    comparaciones siempre da true. Por lo tanto el
    código anterior resulta en “b is true”.

   Otro punto que toca tener en cuenta es que los
    if siempre evalúan un boleano, por lo tanto esto
    arroja un error de compilación
                             Porque x es entero, y a asignarle a
                             x un 0 pues resulta un int, que no
                              es boolean y que el if no acepta
 Para comparar dos variables se usa el
  simbolo == para definir si son iguales, o !=
  para ver si son diferentes.
 Con estos operadores se pueden analizar
  números, caracteres, booleanos y variables
  de referencia.
true

                                              false

                                              true
                                               true

                                      false



 Como puede ver, cuando un número punto
 flotante es comparado con un entero y
 tienen el mismo valor, la comparación ==
 retorna true.
   En el caso de las variables de referencia, a excepción
    de los wrapper la igualdad se da cuando dos variables
    contienen el mismo objeto unicamente.
   Hay que tener cuidado porque a veces uno tiende a
    ver el valor contenido en el objeto, y aunque el valor
    sea igual si son dos objetos distintos pues no existe
    igualdad.
                               a c         b

                                  Exit         Exit

                                                      False, porque a y
                                                         b apuntan a
                                                      diferentes objetos


                                                      True, porque a y c
                                                      apuntan al mismo
                                                            objeto
 Losenums, al ser una colección de valores
 constantes, pues no se manejan como los
 objetos, aquí el comportamiento de la
 igualdad (==) es el mismo que presenta el
 método equals.




        En este ejemplo tanto como == como equals dan true, porque
          ambas variables contienen la misma constante del enum

                                    ==
                                Dot equals
   Por medio de esta sentencia se puede definir cuando
    un objeto es de un tipo en particular. Es decir
    verifica que la propiedad de IS A sea correcta.
                                  Aquí se verifica que s sea
                                 un String, como es correcto
                                      entonces imprime
                                         S is a String

   El instanceof también tiene en cuenta la herencia,
    por ejemplo, cuando se usa el instanceof contra la
    clase padre, es true también.
 Inclusocuando el objeto que se esta
 probando no es una instanciación correcta, el
 instanceof arrojará true si el objeto del lado
 izquierdo es compatible con el del lado
 derecho.


                                  A es compatible de b
                               Aunque a no hereda de b,
                                 se imprime como true
                               porque son compatibles.
   Finalmente es legal usar un null para validar un
    instanceof de una clase, pero el resultado
    siempre es false.

                                         En ambos casos se hace
                                        una comparación con null,
                                        por lo tanto el resultado es
                                                 False false

   No se puede usar un instanceof, para comparar
    dos objetos que se encuentran en diferentes
    líneas de herencia, en caso que se haga sale un
    error de compilación

       Arroja un error de
    compilación porque perro
       no hereda de gato
 Los operadores básicos son +, -, *, /.
 El operador % es el residuo de la división
  entre dos números.




                                 El resultado de dividir 15
                                  entre 5 es 4 y sobran 3,
                                entonces el valor de y es 3
 La concadenación de cadenas se hace con el
  símbolo +.
 El punto que toca tener en cuanta que
  cuando se mezclan números y cadenas,
  cuando se hace esto, todo se vuelve cadena,
  y se unen los números no se suma.
                                    Como a es una cadena, el
                                         resultado es:
                                            String37


 Si   se cambia la última línea por esto
   B y c son int, por leyes de
  parentecis se agrupan b y c
  que da 10 y esto se une a la
             cadena
            String10
 El operador de incremento es ++, y el de
  decremento es –-
 Es importante tener en cuenta la posición en
  que se encuentran, pues esto determina el
  comportamiento que tendrá la instrucción.

                                             Cuando el operador es un
                                            posfijo, entonces ejecuto
                                            la operación, en este caso
                                               imprimir la variable y
                                             después aumento en uno
            Cuando el operador es un prefijo,
            entonces aumento en uno, y luego
            ejecuto la operación, en este caso
                   imprimir la variable
Aquí y = 3, x = 2, comparo
                                             si 3 es igual a 2, siendo
                                            falso, y luego aumento x
                                               en 1. Ahora x vale 3



Aquí x = 3, y = 3, primero aumento y en
1, y vale entonces 4, luego comparo si x
es menor que y, como 3 es menor que 4
                                                   El resultado es
   entonces es verdadero y entra al if               X=3y=4
 Unoperador condicional es una terna de
 elementos que permiten evaluar expresiones
 booleanas. La estructura de la sentencia es:
 x = (boolean expression) ? value to assign if true : value to assign if false


 Por   ejemplo:                                    numOfPets = 3, como es
                                                   menor que 4, entra a “Pet
                                                  limit not exceeded” porque
                                                            es cierto
 Operadores    && y ||
    Los operadores && (y acortado) y || (o
     acortado), sirven para comparar dos decisiones
     en un if,
    Se caracterizan porque valida la primera
     expresión,
    En caso de && si la primera condición es false
     entonces no evalúa el resto de la expresión y no
     entra en la sentencia.
    En el caso de || valida la primera condición si es
     true, entonces no evalúa el resto de la expresión
     y entra en la sentencia.
3 es menor que 5, imprime i<5, y
                                  da como resultado true, y entra a
 Operadores   && y ||               el cuerpo del if, imprimiedo
                                           “Result is true”



                                      Aquí no entra, porque al primero
                                     ser true, este operador omite esta
                                                  sentencia



                                    6 no es menor que 5,
                                  imprime i>=5, y da como
                                       resultado false

                                     9 no es menor que 5, imprime
                                    i>=5, y da como resultado false,
                                    por lo tanto no entra a el cuerpo
                                                  del if

                 i<5
                 Result is true
                 i >= 5
                 i >= 5
 Operadores             |y&
     Estos operadores funcionan parecidos a los de las
      diapositivas anteriores, la diferencia es que estos
      si analizan siempre todas las condiciones de la
      expresión                      Aquí z me vale 5, aumento en 1 y
                                            comparo, como 6 es mayor que 5
                                          entonces es true, y entra sin evaluar
                                          la otra expresión, quedando al final
                                                      z valiendo 7




     Aquí z vale 5, aumento en 1 y
  comparo, 6 es mayor que 5, pero el
operador me dice que debo analizar la
 otra expresión, por lo tanto aumento
en 7, 7 también es mayor que 6, entro
   a la expresión, y al final z vale 8
 Operador        ^ (Xor)
    El operador Xor, siempre evalúa ambos lados de
     la expresión, y se caracteriza porque para que de
     verdadero solo una expresión debe ser
     verdadera.



           true             True

                                   Ambos son verdaderos, por lo tanto el
                                              resultado es:

                                                xor false
 El   operador !
     Cuando se usa el operador !, automáticamente lo
      que hace el sistema es retornar el valor
      contrario, es decir si es verdadero pone falso, y
      viceversa.
What is the result?

   A. null
   B. life
   C. universe
   D. everything
   E. Compilation fails
   F. An exception is thrown at runtime
42 no es menor que 40, pot lo
     tanto entra a evaluar la     42 no es mayor que 50, por lo
    expresión despues de los :       tanto entra a evaluar la
                                   expresión de los dos puntos


 Larespuesta correcta
                                       Al final el resultado de la sentencia es
 es D
                                                    “everything”
Y los siguientes fragamentos de código

                                            F1. if(f1 == f2)
                                            F2. if(f1 == f2[2][1])
                                            F3. if(x == f2[0][0])
                                            F4. if(f1 == f2[1,1])
                                            F5. if(f3 == f2[2])




Qué es cierto?

   A. One of them will compile, only one will be true
   B. Two of them will compile, only one will be true
   C. Two of them will compile, two will be true
   D. Three of them will compile, only one will be true
   E. Three of them will compile, exactly two will be true
   F. Three of them will compile, exactly three will be true
   De enunciado anterior podemos concluir
       De la opción F1 se puede decir que la sentencia
        arroja un error de compilación, porque una variable
        no se puede comparar con un array.
       De la función F2 se puede concluir que compila la
        sentencia, pero los valores 2.3 y 2.7 no son iguales,
        da falso.
       De la función F3 se puede decir que la sentencia
        compila, y que al comparar el valor de x con la
        primitiva se maneja boxing y da igual.
       De la función F4, se dice que no compila, no se puede
        acceder porque un array no se accede como f2[1,1] si
        no f2[1][1].
       De la función F5, se puede decir que la sentencia
        compila, pero no da igual.

   Por lo tanto podemos concluir que la respuesta
    correcta es D
Y la ejecución se hace con la sentencia
java Fork live2

Cuál es el resultado?

   A. test case
   B. production live2
   C. test case live2
   D. Compilation fails
   E. An exception is thrown at runtime
Args en la posición 1 no existe, solo
                        la posición 0, el sistema arroja
                            una excepcion, llamada
                       ArrayIndexOutOfBoundsException




 La   respuesta correcta es la E
What is the result?

   A. 9 foo47 86foo
   B. 9 foo47 4244foo
   C. 9 foo425 86foo
   D. 9 foo425 4244foo
   E. 72 foo47 86foo
   F. 72 foo47 4244foo
   G. 72 foo425 86foo
   H. 72 foo425 4244foo
   I. Compilation fails
El resultado es 72 , porque el
                                          primer carácter es un string
                                          entonces se concadenan los
                                                    números



                                        El resultado es foo425 , porque el
                                         primer caracteres es un String,
                                            entonces se concadenan los
                                                     números


                                      El resultado 86Foo, los números se
                                   suman, porque no hay string antes que
                                    las variables numericas, y después se
                                                asigna el String




 El   resultado es entonces la opción G
 Completeel bloque con las palabras del
 fragmento, para que el resultado de 33
class Incr {
       public static void main(String[] args) {
       Integer x = 7;
       int y = 2;
       x _=*_ _x_;
       y__ _=* _y_;
       y__ _=* _y_;
       x__ _=- _y_;
       System.out.println(x);
  }
}
What is the result? (Choose all that apply.)

   A. 1
   B. 2
   C. 4
   D. 6
   E. 8
   F. Compilation fails
Antes de iniciar el proceso,
                                                  asigno el valor en 1




            Index vale 1, entonces tomo el
            valor 1, y después lo aumento,
           tomo el valor 2 y lo aimento otra
             vez, queda al final la posición
                         [1][2]


   El resultado es 4, la respuesta correcta es la C
What is the result?

   A. same old
   B. newly new
   C. Compilation fails due to multiple errors
   D. Compilation fails due only to an error on line 7
   E. Compilation fails due only to an error on line 8
   F. Compilation fails due only to an error on line 11
   G. Compilation fails due only to an error on line 13
   La ejecución del proceso, no presenta ningún
    error de compilación, la sentencia for recorre los
    valores de el enum, por lo tanto la secuencia
    asigna los valores a la variable d2, con M, T, W y
    TH, no sigue más porque el ciclo llega a F
    termina. Como son iguales impime same old, la
    respuesta es A
Which are true? (Choose all that apply.)

 A. Compilation fails
 B. x will be included in the output
 C. y will be included in the output
 D. z will be included in the output
 E. An exception is thrown at runtime
B = false, no es error de compilación, porque b
                                                  es un boleano, pero el resultado es falso, el
                                                    módulo de 21 y 5 es 1, y es falso también
                                                              entonces no imprime x




                                                             B1 es true, entonces entra e
                                                                      imprime y
             B2 es falso, porqie en la primero
               pregunta le asigne a b2 falso




 La compilación no falla, ni arroja excepción,
 la sentencia incluye a y únicamente. La
 respuesta correcta es C
Which two answers are true about the value of mask and the value of count
  at line 10? (Choose two.)

   A. mask is 0
   B. mask is 1
   C. mask is 2
   D. mask is 10
   E. mask is greater than 10
   F. count is 0
   G. count is greater than 0

Más contenido relacionado

La actualidad más candente

1390230107 194 _operadores
1390230107 194 _operadores1390230107 194 _operadores
1390230107 194 _operadoresJair BG
 
1. funciones
1. funciones1. funciones
1. funcionescgviviana
 
Informe Proyecto Final
Informe Proyecto FinalInforme Proyecto Final
Informe Proyecto FinalJorge Ramon
 
Programaciòn Estructurada
Programaciòn EstructuradaProgramaciòn Estructurada
Programaciòn EstructuradaFernanda-Guzman
 
Sintaxis Básica del lenguaje Java
Sintaxis Básica del lenguaje JavaSintaxis Básica del lenguaje Java
Sintaxis Básica del lenguaje JavaRay
 
Limite en el infinito y hacia el infinito
Limite en el infinito y hacia el infinitoLimite en el infinito y hacia el infinito
Limite en el infinito y hacia el infinitoJulio Aguirre
 
Estructura Repetitivas
Estructura RepetitivasEstructura Repetitivas
Estructura Repetitivaslaryenso
 
Temas que comprenden la Unidad I y II
Temas que comprenden la Unidad I y IITemas que comprenden la Unidad I y II
Temas que comprenden la Unidad I y IISistemadeEstudiosMed
 

La actualidad más candente (17)

1390230107 194 _operadores
1390230107 194 _operadores1390230107 194 _operadores
1390230107 194 _operadores
 
Action scrip 3,0
Action scrip 3,0 Action scrip 3,0
Action scrip 3,0
 
Repaso álgebra
Repaso álgebraRepaso álgebra
Repaso álgebra
 
Modulo2b
Modulo2bModulo2b
Modulo2b
 
Mod2ud1 2
Mod2ud1 2Mod2ud1 2
Mod2ud1 2
 
1. funciones
1. funciones1. funciones
1. funciones
 
Logica de negocios
Logica de negociosLogica de negocios
Logica de negocios
 
Informe Proyecto Final
Informe Proyecto FinalInforme Proyecto Final
Informe Proyecto Final
 
Programaciòn Estructurada
Programaciòn EstructuradaProgramaciòn Estructurada
Programaciòn Estructurada
 
Informatica
InformaticaInformatica
Informatica
 
Proporcionalidad vives
Proporcionalidad vivesProporcionalidad vives
Proporcionalidad vives
 
Sintaxis Básica del lenguaje Java
Sintaxis Básica del lenguaje JavaSintaxis Básica del lenguaje Java
Sintaxis Básica del lenguaje Java
 
MANUAL CALCULADORA VOYAGE Capitulo 2 (6)
MANUAL CALCULADORA VOYAGE Capitulo 2 (6)MANUAL CALCULADORA VOYAGE Capitulo 2 (6)
MANUAL CALCULADORA VOYAGE Capitulo 2 (6)
 
Limite en el infinito y hacia el infinito
Limite en el infinito y hacia el infinitoLimite en el infinito y hacia el infinito
Limite en el infinito y hacia el infinito
 
Estructura Repetitivas
Estructura RepetitivasEstructura Repetitivas
Estructura Repetitivas
 
Temas que comprenden la Unidad I y II
Temas que comprenden la Unidad I y IITemas que comprenden la Unidad I y II
Temas que comprenden la Unidad I y II
 
Estructuras anidadas
Estructuras anidadasEstructuras anidadas
Estructuras anidadas
 

Similar a Certificación java 6 cap 4 (20)

1 fundamentos
1 fundamentos1 fundamentos
1 fundamentos
 
Certificación java 6 cap 3
Certificación java 6 cap 3Certificación java 6 cap 3
Certificación java 6 cap 3
 
1 fundamentos
1 fundamentos1 fundamentos
1 fundamentos
 
Números Reales.pptx
Números Reales.pptxNúmeros Reales.pptx
Números Reales.pptx
 
Presentación numeros reales
Presentación numeros realesPresentación numeros reales
Presentación numeros reales
 
Potenciacion y radicacion y sus propiedades
Potenciacion y radicacion y sus propiedadesPotenciacion y radicacion y sus propiedades
Potenciacion y radicacion y sus propiedades
 
Franyinex roas lopez
Franyinex roas lopezFranyinex roas lopez
Franyinex roas lopez
 
Expresiones y operaciones grupo 1
Expresiones y operaciones grupo 1Expresiones y operaciones grupo 1
Expresiones y operaciones grupo 1
 
Informatica
InformaticaInformatica
Informatica
 
Operadores
OperadoresOperadores
Operadores
 
Cap13
Cap13Cap13
Cap13
 
Jf 2 13_sg_esp(2)(3)
Jf 2 13_sg_esp(2)(3)Jf 2 13_sg_esp(2)(3)
Jf 2 13_sg_esp(2)(3)
 
Alice 13
Alice 13Alice 13
Alice 13
 
Jf 2 13_sg_esp(2)(3)
Jf 2 13_sg_esp(2)(3)Jf 2 13_sg_esp(2)(3)
Jf 2 13_sg_esp(2)(3)
 
Alice 13
Alice 13Alice 13
Alice 13
 
Capitulo 13
Capitulo 13Capitulo 13
Capitulo 13
 
Capítulo 13
Capítulo 13Capítulo 13
Capítulo 13
 
CAPITULO 13 DE ALICE
CAPITULO 13 DE ALICECAPITULO 13 DE ALICE
CAPITULO 13 DE ALICE
 
PDF 13
PDF 13PDF 13
PDF 13
 
CAPITULO 13 ALICE
CAPITULO 13 ALICECAPITULO 13 ALICE
CAPITULO 13 ALICE
 

Último

INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptxdeimerhdz21
 
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...JAVIER SOLIS NOYOLA
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMarjorie Burga
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADauxsoporte
 
Éteres. Química Orgánica. Propiedades y reacciones
Éteres. Química Orgánica. Propiedades y reaccionesÉteres. Química Orgánica. Propiedades y reacciones
Éteres. Química Orgánica. Propiedades y reaccionesLauraColom3
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arteRaquel Martín Contreras
 
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxTECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxKarlaMassielMartinez
 
Qué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaQué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaDecaunlz
 
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAJAVIER SOLIS NOYOLA
 
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñoproyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñotapirjackluis
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoFundación YOD YOD
 
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdfEjercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdfMaritzaRetamozoVera
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxYadi Campos
 
plan de capacitacion docente AIP 2024 clllll.pdf
plan de capacitacion docente  AIP 2024          clllll.pdfplan de capacitacion docente  AIP 2024          clllll.pdf
plan de capacitacion docente AIP 2024 clllll.pdfenelcielosiempre
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Lourdes Feria
 

Último (20)

INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptx
 
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grande
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDAD
 
Power Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptxPower Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptx
 
Presentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza MultigradoPresentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza Multigrado
 
Éteres. Química Orgánica. Propiedades y reacciones
Éteres. Química Orgánica. Propiedades y reaccionesÉteres. Química Orgánica. Propiedades y reacciones
Éteres. Química Orgánica. Propiedades y reacciones
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arte
 
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxTECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
 
Qué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaQué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativa
 
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
 
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñoproyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
 
Sesión de clase: Fe contra todo pronóstico
Sesión de clase: Fe contra todo pronósticoSesión de clase: Fe contra todo pronóstico
Sesión de clase: Fe contra todo pronóstico
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativo
 
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
 
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdfEjercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
 
plan de capacitacion docente AIP 2024 clllll.pdf
plan de capacitacion docente  AIP 2024          clllll.pdfplan de capacitacion docente  AIP 2024          clllll.pdf
plan de capacitacion docente AIP 2024 clllll.pdf
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...
 
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdfTema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
 

Certificación java 6 cap 4

  • 1. Capítulo 4 - Operadores
  • 2. Cubre el objetivo: 7.6 Write code that correctly applies the appropriate operators including assignment operators (limited to: =, +=, -=), arithmetic operators (limited to: +, -, *, /, %, ++, --), relational operators (limited to: <, <=, >, >=, ==, !=), the instanceof operator, logical operators (limited to: &, |, ^, !, &&, ||), and the conditional operator (? :), to produce a desired result. Write code that determines the equality of two objects or two primitives.
  • 3. Aunque ya se vio la mayoría de las implicaciones de usar el signo = en el capítulo pasado, los puntos a destacar son:  Cuando se asigna un primitivo hay que tener en cuenta el tamaño, debe saber cuando el casteo debe ser implícito o explícito, y cuando ocurre un truncamiento de datos  Recuerde que una variable de referencia no es un objeto, y que el símbolo = no es lo mismo que un método get.  Cuando se asigna una variable de referencia importa el tamaño, es decir si el objeto pertenece a una clase padre, a una subclase, a una interface, o a un array.
  • 4.  Existenoperadores compuestos con el símbolo igual, estos operadores sirven para acortar las líneas de código. y = y - 6; y -= 6; x = x + 2 * 5; x += 2 * 5;
  • 5.  Existen 6 operadores relacionales (<, <=, >, >=, ==, and !=). Y sirven para comparar variables.  El uso de estos operadores siempre dan como resultado un booleano, por lo tanto es muy común usarlo en las sentencias if. Animal = unknown Animal = elephant Animal = gray elephant Animal = gray elephant The animal is a gray elephant
  • 6. A veces suele ponerse algo como esto  El if no tiene una comparación, es decir no se esta comparando si el valor de b es true o false, si no que se esta asignando a b true, este tipo de comparaciones siempre da true. Por lo tanto el código anterior resulta en “b is true”.  Otro punto que toca tener en cuenta es que los if siempre evalúan un boleano, por lo tanto esto arroja un error de compilación Porque x es entero, y a asignarle a x un 0 pues resulta un int, que no es boolean y que el if no acepta
  • 7.  Para comparar dos variables se usa el simbolo == para definir si son iguales, o != para ver si son diferentes.  Con estos operadores se pueden analizar números, caracteres, booleanos y variables de referencia.
  • 8. true false true true false  Como puede ver, cuando un número punto flotante es comparado con un entero y tienen el mismo valor, la comparación == retorna true.
  • 9. En el caso de las variables de referencia, a excepción de los wrapper la igualdad se da cuando dos variables contienen el mismo objeto unicamente.  Hay que tener cuidado porque a veces uno tiende a ver el valor contenido en el objeto, y aunque el valor sea igual si son dos objetos distintos pues no existe igualdad. a c b Exit Exit False, porque a y b apuntan a diferentes objetos True, porque a y c apuntan al mismo objeto
  • 10.  Losenums, al ser una colección de valores constantes, pues no se manejan como los objetos, aquí el comportamiento de la igualdad (==) es el mismo que presenta el método equals. En este ejemplo tanto como == como equals dan true, porque ambas variables contienen la misma constante del enum == Dot equals
  • 11. Por medio de esta sentencia se puede definir cuando un objeto es de un tipo en particular. Es decir verifica que la propiedad de IS A sea correcta. Aquí se verifica que s sea un String, como es correcto entonces imprime S is a String  El instanceof también tiene en cuenta la herencia, por ejemplo, cuando se usa el instanceof contra la clase padre, es true también.
  • 12.  Inclusocuando el objeto que se esta probando no es una instanciación correcta, el instanceof arrojará true si el objeto del lado izquierdo es compatible con el del lado derecho. A es compatible de b Aunque a no hereda de b, se imprime como true porque son compatibles.
  • 13. Finalmente es legal usar un null para validar un instanceof de una clase, pero el resultado siempre es false. En ambos casos se hace una comparación con null, por lo tanto el resultado es False false  No se puede usar un instanceof, para comparar dos objetos que se encuentran en diferentes líneas de herencia, en caso que se haga sale un error de compilación Arroja un error de compilación porque perro no hereda de gato
  • 14.  Los operadores básicos son +, -, *, /.  El operador % es el residuo de la división entre dos números. El resultado de dividir 15 entre 5 es 4 y sobran 3, entonces el valor de y es 3
  • 15.  La concadenación de cadenas se hace con el símbolo +.  El punto que toca tener en cuanta que cuando se mezclan números y cadenas, cuando se hace esto, todo se vuelve cadena, y se unen los números no se suma. Como a es una cadena, el resultado es: String37  Si se cambia la última línea por esto B y c son int, por leyes de parentecis se agrupan b y c que da 10 y esto se une a la cadena String10
  • 16.  El operador de incremento es ++, y el de decremento es –-  Es importante tener en cuenta la posición en que se encuentran, pues esto determina el comportamiento que tendrá la instrucción. Cuando el operador es un posfijo, entonces ejecuto la operación, en este caso imprimir la variable y después aumento en uno Cuando el operador es un prefijo, entonces aumento en uno, y luego ejecuto la operación, en este caso imprimir la variable
  • 17. Aquí y = 3, x = 2, comparo si 3 es igual a 2, siendo falso, y luego aumento x en 1. Ahora x vale 3 Aquí x = 3, y = 3, primero aumento y en 1, y vale entonces 4, luego comparo si x es menor que y, como 3 es menor que 4 El resultado es entonces es verdadero y entra al if X=3y=4
  • 18.  Unoperador condicional es una terna de elementos que permiten evaluar expresiones booleanas. La estructura de la sentencia es: x = (boolean expression) ? value to assign if true : value to assign if false  Por ejemplo: numOfPets = 3, como es menor que 4, entra a “Pet limit not exceeded” porque es cierto
  • 19.  Operadores && y ||  Los operadores && (y acortado) y || (o acortado), sirven para comparar dos decisiones en un if,  Se caracterizan porque valida la primera expresión,  En caso de && si la primera condición es false entonces no evalúa el resto de la expresión y no entra en la sentencia.  En el caso de || valida la primera condición si es true, entonces no evalúa el resto de la expresión y entra en la sentencia.
  • 20. 3 es menor que 5, imprime i<5, y da como resultado true, y entra a  Operadores && y || el cuerpo del if, imprimiedo “Result is true” Aquí no entra, porque al primero ser true, este operador omite esta sentencia 6 no es menor que 5, imprime i>=5, y da como resultado false 9 no es menor que 5, imprime i>=5, y da como resultado false, por lo tanto no entra a el cuerpo del if i<5 Result is true i >= 5 i >= 5
  • 21.  Operadores |y&  Estos operadores funcionan parecidos a los de las diapositivas anteriores, la diferencia es que estos si analizan siempre todas las condiciones de la expresión Aquí z me vale 5, aumento en 1 y comparo, como 6 es mayor que 5 entonces es true, y entra sin evaluar la otra expresión, quedando al final z valiendo 7 Aquí z vale 5, aumento en 1 y comparo, 6 es mayor que 5, pero el operador me dice que debo analizar la otra expresión, por lo tanto aumento en 7, 7 también es mayor que 6, entro a la expresión, y al final z vale 8
  • 22.  Operador ^ (Xor)  El operador Xor, siempre evalúa ambos lados de la expresión, y se caracteriza porque para que de verdadero solo una expresión debe ser verdadera. true True Ambos son verdaderos, por lo tanto el resultado es: xor false
  • 23.  El operador !  Cuando se usa el operador !, automáticamente lo que hace el sistema es retornar el valor contrario, es decir si es verdadero pone falso, y viceversa.
  • 24.
  • 25. What is the result?  A. null  B. life  C. universe  D. everything  E. Compilation fails  F. An exception is thrown at runtime
  • 26. 42 no es menor que 40, pot lo tanto entra a evaluar la 42 no es mayor que 50, por lo expresión despues de los : tanto entra a evaluar la expresión de los dos puntos  Larespuesta correcta Al final el resultado de la sentencia es es D “everything”
  • 27. Y los siguientes fragamentos de código F1. if(f1 == f2) F2. if(f1 == f2[2][1]) F3. if(x == f2[0][0]) F4. if(f1 == f2[1,1]) F5. if(f3 == f2[2]) Qué es cierto?  A. One of them will compile, only one will be true  B. Two of them will compile, only one will be true  C. Two of them will compile, two will be true  D. Three of them will compile, only one will be true  E. Three of them will compile, exactly two will be true  F. Three of them will compile, exactly three will be true
  • 28. De enunciado anterior podemos concluir  De la opción F1 se puede decir que la sentencia arroja un error de compilación, porque una variable no se puede comparar con un array.  De la función F2 se puede concluir que compila la sentencia, pero los valores 2.3 y 2.7 no son iguales, da falso.  De la función F3 se puede decir que la sentencia compila, y que al comparar el valor de x con la primitiva se maneja boxing y da igual.  De la función F4, se dice que no compila, no se puede acceder porque un array no se accede como f2[1,1] si no f2[1][1].  De la función F5, se puede decir que la sentencia compila, pero no da igual.  Por lo tanto podemos concluir que la respuesta correcta es D
  • 29. Y la ejecución se hace con la sentencia java Fork live2 Cuál es el resultado?  A. test case  B. production live2  C. test case live2  D. Compilation fails  E. An exception is thrown at runtime
  • 30. Args en la posición 1 no existe, solo la posición 0, el sistema arroja una excepcion, llamada ArrayIndexOutOfBoundsException  La respuesta correcta es la E
  • 31. What is the result?  A. 9 foo47 86foo  B. 9 foo47 4244foo  C. 9 foo425 86foo  D. 9 foo425 4244foo  E. 72 foo47 86foo  F. 72 foo47 4244foo  G. 72 foo425 86foo  H. 72 foo425 4244foo  I. Compilation fails
  • 32. El resultado es 72 , porque el primer carácter es un string entonces se concadenan los números El resultado es foo425 , porque el primer caracteres es un String, entonces se concadenan los números El resultado 86Foo, los números se suman, porque no hay string antes que las variables numericas, y después se asigna el String  El resultado es entonces la opción G
  • 33.  Completeel bloque con las palabras del fragmento, para que el resultado de 33
  • 34. class Incr { public static void main(String[] args) { Integer x = 7; int y = 2; x _=*_ _x_; y__ _=* _y_; y__ _=* _y_; x__ _=- _y_; System.out.println(x); } }
  • 35. What is the result? (Choose all that apply.)  A. 1  B. 2  C. 4  D. 6  E. 8  F. Compilation fails
  • 36. Antes de iniciar el proceso, asigno el valor en 1 Index vale 1, entonces tomo el valor 1, y después lo aumento, tomo el valor 2 y lo aimento otra vez, queda al final la posición [1][2]  El resultado es 4, la respuesta correcta es la C
  • 37. What is the result?  A. same old  B. newly new  C. Compilation fails due to multiple errors  D. Compilation fails due only to an error on line 7  E. Compilation fails due only to an error on line 8  F. Compilation fails due only to an error on line 11  G. Compilation fails due only to an error on line 13
  • 38. La ejecución del proceso, no presenta ningún error de compilación, la sentencia for recorre los valores de el enum, por lo tanto la secuencia asigna los valores a la variable d2, con M, T, W y TH, no sigue más porque el ciclo llega a F termina. Como son iguales impime same old, la respuesta es A
  • 39. Which are true? (Choose all that apply.)  A. Compilation fails  B. x will be included in the output  C. y will be included in the output  D. z will be included in the output  E. An exception is thrown at runtime
  • 40. B = false, no es error de compilación, porque b es un boleano, pero el resultado es falso, el módulo de 21 y 5 es 1, y es falso también entonces no imprime x B1 es true, entonces entra e imprime y B2 es falso, porqie en la primero pregunta le asigne a b2 falso  La compilación no falla, ni arroja excepción, la sentencia incluye a y únicamente. La respuesta correcta es C
  • 41. Which two answers are true about the value of mask and the value of count at line 10? (Choose two.)  A. mask is 0  B. mask is 1  C. mask is 2  D. mask is 10  E. mask is greater than 10  F. count is 0  G. count is greater than 0