SlideShare ist ein Scribd-Unternehmen logo
1 von 15
Downloaden Sie, um offline zu lesen
SCJP 6
   Clase 4 – Operadores




    Ezequiel Aranda
Sun Microsystems Campus
      Ambassador
Disclaimer & Acknowledgments
>!Even though Ezequiel Aranda is a full-time employee of Sun
  Microsystems, the contents here are created as his own
  personal endeavor and thus does not reflect any official
  stance of Sun Microsystems.
>!Sun Microsystems is not responsible for any inaccuracies in
  the contents.
>!Acknowledgments – The slides of this presentation are made
  from “SCJP Unit 4” by Warit Wanwithu and Thanisa
  Kruawaisayawan and SCJP Workshop by P. Srikanth.
>!This slides are Licensed under a Creative Commons
  Attribution – Noncommercial – Share Alike 3.0
   >!http://creativecommons.org/licenses/by-nc-sa/3.0/
AGENDA

>! peradores de asignación
 O
>!nstanceof
 i
>! oncatenación de Strings
 C
>! perador condicional
 O
>! peradores lógicos
 O
Operadores de asignación

>! uando asignamos un valor a un primitivo, el
 C
 tamaño importa. Debemos estar seguros de si
 se dará un casting implícito, uno explicito o si
 se truncará el número.
>! na variable de referencia no es un objeto. Es
 U
 una forma de alcanzar un objeto.
>! uando asignamos un valor a una variable de
 C
 referencia, el tipo importa. Debemos recordar
 las reglas para supertipos, subtipos y arrays.
Igualdad en referencias a objetos
>! l operador == observa los bits en la variable,
 E
 y en el caso de las referencias esto significa
 que si los bits en ambas variables de
 referencia son iguales, entonces ambas hacen
 referencia al mismo objeto.
  JButton a = new JButton("Exit");
  JButton b = new JButton("Exit");
  JButton c = a;
  System.out.println("a == b? " + (a ==
    b));
  System.out.println("a == c? " + (a ==
    c));
Comparación con instanceof

>! s verdadera si el objeto
 E
 en el lado izquierdo del
 operador pasa la prueba
 “ES UN” para la clase o
 interfaz en el lado
 derecho.
>! os arrays son objetos,
 L
 incluso cuando son
 arrays de primitivos.
class A { }
class B extends A {
  public static void main (String [] args) {
    A myA= new B();
    m2(myA);
  }
  public static void m2(A a) {
    if (a instanceof B)
      ((B)a).doBstuff(); //downcast
  }
  public static void doBstuff(){
    System.out.println("'a' refers to a B");
  }
}
Operador de concatenación en
             Strings
  String a = "String";
  int b = 3;
  int c = 7;
  System.out.println(a+ b + c);
>! l signo ‘+’, ¿actuará como un operador de
 E
 suma o como uno de concatenación cuando
 opere las variables b y c?
>! Y si hicieramos b+c+a?
 ¿
Operador de concatenación en
            Strings (II)
>! Comenzamos con el String a, y le agregamos
 “
 el carácter 3 (b), para producir el String
 “String3”. Después agregamos el carácter 7
 (c), para producir el String “String37”, luego
 lo imprimimos”.
>! i ambos operandos son Strings, ‘+’ actuará
 S
 como operador de concatenación. Si ambos
 son números, ‘+’ actuará como operador de
 adición.
Operador condicional

>! l operador condicional es un operador
 E
 ternario que se utiliza para evaluar
 operaciones booleanas en forma similar al if.
>! a diferencia es que en vez de ejecutar un
 L
 bloque de código, sólo podremos asignar un
 valor a una variable.
  x = (boolean expression) ? value to
   assign if true : value to assign
   if false
class Salary {
    public static void main(String[] args) {
        int numOfPets = 3;
     String status = (numOfPets<4) ?
     “Pet limit not exceeded” :
     “too many pets”;
        System.out.println("This pet status is "
        + status);
    }
}
Operadores lógicos de
           “cortocircuito”
>! os operadores ‘&&’ y ‘||’ evalúan
 L
 solo valores booleanos.
>! &&’: short-circuit AND
 ‘
>! ||’: short-circuit OR
 ‘
>! e llaman de cortocircuito porque
 S
 evalúan primero el lado izquierdo
 de la operación y si logra una
 resolución, no evalúa la parte
 derecha.
XOR

>! l operador XOR (‘^’) no
 E
 es de cortocircuito
>! ara que una operación
 P
 XOR evalúe a true, uno y
 sólo uno de los operandos
 debe evaluar a true.
class Feline {
  public static void main(String[] args) {
    Long x = 42L; Long y = 44L;
    System.out.print(" " + 7 + 2 + " ");
    System.out.print(foo() + x + 5 + " ");
    System.out.println(x + y + foo());
  }
static String foo() { return "foo"; }
}
>!¿Cuál es el resultado?
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
Preguntas

Weitere ähnliche Inhalte

Was ist angesagt?

Guía sobre integral indefinida
Guía sobre integral indefinidaGuía sobre integral indefinida
Guía sobre integral indefinidaangiegutierrez11
 
automatas finitos
 automatas finitos automatas finitos
automatas finitosAnel Sosa
 
Laboratorio 1
Laboratorio 1Laboratorio 1
Laboratorio 1dqiu
 
1.1 palabras reservadas para hacer un pseudocódigo
1.1 palabras reservadas para hacer un pseudocódigo1.1 palabras reservadas para hacer un pseudocódigo
1.1 palabras reservadas para hacer un pseudocódigoGioo
 
Estructura de un programa
Estructura de un programaEstructura de un programa
Estructura de un programaFelipe Romano
 
Propiedades de la integral indefinida
Propiedades de la integral indefinidaPropiedades de la integral indefinida
Propiedades de la integral indefinidaangiegutierrez11
 
Ejercicios evaluados i. shearly achji y ricardo ros. estructuras de datos i. ...
Ejercicios evaluados i. shearly achji y ricardo ros. estructuras de datos i. ...Ejercicios evaluados i. shearly achji y ricardo ros. estructuras de datos i. ...
Ejercicios evaluados i. shearly achji y ricardo ros. estructuras de datos i. ...Ricardo Ros
 
Presentación de automata finito no deterministico, ana belgica vallejo y saud...
Presentación de automata finito no deterministico, ana belgica vallejo y saud...Presentación de automata finito no deterministico, ana belgica vallejo y saud...
Presentación de automata finito no deterministico, ana belgica vallejo y saud...Ana Belgica Vallejo Lebron
 
Tipos de operadores
Tipos de operadoresTipos de operadores
Tipos de operadoresMarthaa Hdz
 
Presentacion 2 - Maquinas de Estado Finito
Presentacion 2 - Maquinas de Estado FinitoPresentacion 2 - Maquinas de Estado Finito
Presentacion 2 - Maquinas de Estado Finitojunito86
 

Was ist angesagt? (16)

Guía sobre integral indefinida
Guía sobre integral indefinidaGuía sobre integral indefinida
Guía sobre integral indefinida
 
Compuertas logicas
Compuertas logicasCompuertas logicas
Compuertas logicas
 
automatas finitos
 automatas finitos automatas finitos
automatas finitos
 
Maquinas de estado finito mapa mental
Maquinas de estado finito mapa mentalMaquinas de estado finito mapa mental
Maquinas de estado finito mapa mental
 
Integral indefinida
Integral indefinidaIntegral indefinida
Integral indefinida
 
Laboratorio 1
Laboratorio 1Laboratorio 1
Laboratorio 1
 
Leccion 2 Java
Leccion 2 JavaLeccion 2 Java
Leccion 2 Java
 
1.1 palabras reservadas para hacer un pseudocódigo
1.1 palabras reservadas para hacer un pseudocódigo1.1 palabras reservadas para hacer un pseudocódigo
1.1 palabras reservadas para hacer un pseudocódigo
 
Estructura de un programa
Estructura de un programaEstructura de un programa
Estructura de un programa
 
Propiedades de la integral indefinida
Propiedades de la integral indefinidaPropiedades de la integral indefinida
Propiedades de la integral indefinida
 
Operadores C SHARP
Operadores C SHARPOperadores C SHARP
Operadores C SHARP
 
Ejercicios evaluados i. shearly achji y ricardo ros. estructuras de datos i. ...
Ejercicios evaluados i. shearly achji y ricardo ros. estructuras de datos i. ...Ejercicios evaluados i. shearly achji y ricardo ros. estructuras de datos i. ...
Ejercicios evaluados i. shearly achji y ricardo ros. estructuras de datos i. ...
 
Presentación de automata finito no deterministico, ana belgica vallejo y saud...
Presentación de automata finito no deterministico, ana belgica vallejo y saud...Presentación de automata finito no deterministico, ana belgica vallejo y saud...
Presentación de automata finito no deterministico, ana belgica vallejo y saud...
 
Tipos de operadores
Tipos de operadoresTipos de operadores
Tipos de operadores
 
Presentacion 2 - Maquinas de Estado Finito
Presentacion 2 - Maquinas de Estado FinitoPresentacion 2 - Maquinas de Estado Finito
Presentacion 2 - Maquinas de Estado Finito
 
Inf ormatiiqa
Inf ormatiiqaInf ormatiiqa
Inf ormatiiqa
 

Ähnlich wie Clase4 operadores

Ähnlich wie Clase4 operadores (20)

SCJP, Clase 4: Operadores
SCJP, Clase 4: OperadoresSCJP, Clase 4: Operadores
SCJP, Clase 4: Operadores
 
Clase3 asignaciones
Clase3 asignacionesClase3 asignaciones
Clase3 asignaciones
 
Practica13
Practica13Practica13
Practica13
 
Practica13
Practica13Practica13
Practica13
 
Practica 13 alice
Practica 13 alicePractica 13 alice
Practica 13 alice
 
Practica 13
Practica 13Practica 13
Practica 13
 
Practica13
Practica13Practica13
Practica13
 
PRACTICA 13 ALICE
PRACTICA 13 ALICEPRACTICA 13 ALICE
PRACTICA 13 ALICE
 
Practica 13 de_alice(2)
Practica 13 de_alice(2)Practica 13 de_alice(2)
Practica 13 de_alice(2)
 
Practica 13 de_alice(2)
Practica 13 de_alice(2)Practica 13 de_alice(2)
Practica 13 de_alice(2)
 
Clase5 controldeflujo
Clase5 controldeflujoClase5 controldeflujo
Clase5 controldeflujo
 
PRACTICA 13
PRACTICA 13PRACTICA 13
PRACTICA 13
 
PRACTICA 13 DE ALICE
PRACTICA 13 DE ALICEPRACTICA 13 DE ALICE
PRACTICA 13 DE ALICE
 
Practica alice p13 v1
Practica alice p13 v1Practica alice p13 v1
Practica alice p13 v1
 
Unidad 2
Unidad 2Unidad 2
Unidad 2
 
Alice13
Alice13Alice13
Alice13
 
4 operadores
4 operadores4 operadores
4 operadores
 
C sharp
C sharpC sharp
C sharp
 
Que es un algoritmo de jorge magaña
Que es un algoritmo de jorge magañaQue es un algoritmo de jorge magaña
Que es un algoritmo de jorge magaña
 
2685008 taller-java
2685008 taller-java2685008 taller-java
2685008 taller-java
 

Mehr von jorg_marq

Clase9 threads
Clase9 threadsClase9 threads
Clase9 threadsjorg_marq
 
Clase8 innerclasses
Clase8 innerclassesClase8 innerclasses
Clase8 innerclassesjorg_marq
 
Clase7 generics
Clase7 genericsClase7 generics
Clase7 genericsjorg_marq
 
Clase6 collections
Clase6 collectionsClase6 collections
Clase6 collectionsjorg_marq
 
Clase2 ejemplosdeenumpoo
Clase2 ejemplosdeenumpooClase2 ejemplosdeenumpoo
Clase2 ejemplosdeenumpoojorg_marq
 
Clase1 introduccinalcurso
Clase1 introduccinalcursoClase1 introduccinalcurso
Clase1 introduccinalcursojorg_marq
 
Capitulos 8 9-10
Capitulos 8 9-10Capitulos 8 9-10
Capitulos 8 9-10jorg_marq
 
Clase10 stringsio
Clase10 stringsioClase10 stringsio
Clase10 stringsiojorg_marq
 
Whither cman
Whither cmanWhither cman
Whither cmanjorg_marq
 
Ex300 objectives
Ex300   objectivesEx300   objectives
Ex300 objectivesjorg_marq
 
Ex200 objectives
Ex200   objectivesEx200   objectives
Ex200 objectivesjorg_marq
 

Mehr von jorg_marq (18)

Clase9 threads
Clase9 threadsClase9 threads
Clase9 threads
 
Clase8 innerclasses
Clase8 innerclassesClase8 innerclasses
Clase8 innerclasses
 
Clase7 generics
Clase7 genericsClase7 generics
Clase7 generics
 
Clase6 collections
Clase6 collectionsClase6 collections
Clase6 collections
 
Clase2 ejemplosdeenumpoo
Clase2 ejemplosdeenumpooClase2 ejemplosdeenumpoo
Clase2 ejemplosdeenumpoo
 
Clase1 introduccinalcurso
Clase1 introduccinalcursoClase1 introduccinalcurso
Clase1 introduccinalcurso
 
Capitulos 8 9-10
Capitulos 8 9-10Capitulos 8 9-10
Capitulos 8 9-10
 
Capitulo 7
Capitulo 7Capitulo 7
Capitulo 7
 
Capitulo 6
Capitulo 6Capitulo 6
Capitulo 6
 
Capitulo 5
Capitulo 5Capitulo 5
Capitulo 5
 
Capitulo 4
Capitulo 4Capitulo 4
Capitulo 4
 
Capitulo 3
Capitulo 3Capitulo 3
Capitulo 3
 
Capitulo 2
Capitulo 2Capitulo 2
Capitulo 2
 
Capitulo 1
Capitulo 1Capitulo 1
Capitulo 1
 
Clase10 stringsio
Clase10 stringsioClase10 stringsio
Clase10 stringsio
 
Whither cman
Whither cmanWhither cman
Whither cman
 
Ex300 objectives
Ex300   objectivesEx300   objectives
Ex300 objectives
 
Ex200 objectives
Ex200   objectivesEx200   objectives
Ex200 objectives
 

Clase4 operadores

  • 1. SCJP 6 Clase 4 – Operadores Ezequiel Aranda Sun Microsystems Campus Ambassador
  • 2. Disclaimer & Acknowledgments >!Even though Ezequiel Aranda is a full-time employee of Sun Microsystems, the contents here are created as his own personal endeavor and thus does not reflect any official stance of Sun Microsystems. >!Sun Microsystems is not responsible for any inaccuracies in the contents. >!Acknowledgments – The slides of this presentation are made from “SCJP Unit 4” by Warit Wanwithu and Thanisa Kruawaisayawan and SCJP Workshop by P. Srikanth. >!This slides are Licensed under a Creative Commons Attribution – Noncommercial – Share Alike 3.0 >!http://creativecommons.org/licenses/by-nc-sa/3.0/
  • 3. AGENDA >! peradores de asignación O >!nstanceof i >! oncatenación de Strings C >! perador condicional O >! peradores lógicos O
  • 4. Operadores de asignación >! uando asignamos un valor a un primitivo, el C tamaño importa. Debemos estar seguros de si se dará un casting implícito, uno explicito o si se truncará el número. >! na variable de referencia no es un objeto. Es U una forma de alcanzar un objeto. >! uando asignamos un valor a una variable de C referencia, el tipo importa. Debemos recordar las reglas para supertipos, subtipos y arrays.
  • 5. Igualdad en referencias a objetos >! l operador == observa los bits en la variable, E y en el caso de las referencias esto significa que si los bits en ambas variables de referencia son iguales, entonces ambas hacen referencia al mismo objeto. JButton a = new JButton("Exit"); JButton b = new JButton("Exit"); JButton c = a; System.out.println("a == b? " + (a == b)); System.out.println("a == c? " + (a == c));
  • 6. Comparación con instanceof >! s verdadera si el objeto E en el lado izquierdo del operador pasa la prueba “ES UN” para la clase o interfaz en el lado derecho. >! os arrays son objetos, L incluso cuando son arrays de primitivos.
  • 7. class A { } class B extends A { public static void main (String [] args) { A myA= new B(); m2(myA); } public static void m2(A a) { if (a instanceof B) ((B)a).doBstuff(); //downcast } public static void doBstuff(){ System.out.println("'a' refers to a B"); } }
  • 8. Operador de concatenación en Strings String a = "String"; int b = 3; int c = 7; System.out.println(a+ b + c); >! l signo ‘+’, ¿actuará como un operador de E suma o como uno de concatenación cuando opere las variables b y c? >! Y si hicieramos b+c+a? ¿
  • 9. Operador de concatenación en Strings (II) >! Comenzamos con el String a, y le agregamos “ el carácter 3 (b), para producir el String “String3”. Después agregamos el carácter 7 (c), para producir el String “String37”, luego lo imprimimos”. >! i ambos operandos son Strings, ‘+’ actuará S como operador de concatenación. Si ambos son números, ‘+’ actuará como operador de adición.
  • 10. Operador condicional >! l operador condicional es un operador E ternario que se utiliza para evaluar operaciones booleanas en forma similar al if. >! a diferencia es que en vez de ejecutar un L bloque de código, sólo podremos asignar un valor a una variable. x = (boolean expression) ? value to assign if true : value to assign if false
  • 11. class Salary { public static void main(String[] args) { int numOfPets = 3; String status = (numOfPets<4) ? “Pet limit not exceeded” : “too many pets”; System.out.println("This pet status is " + status); } }
  • 12. Operadores lógicos de “cortocircuito” >! os operadores ‘&&’ y ‘||’ evalúan L solo valores booleanos. >! &&’: short-circuit AND ‘ >! ||’: short-circuit OR ‘ >! e llaman de cortocircuito porque S evalúan primero el lado izquierdo de la operación y si logra una resolución, no evalúa la parte derecha.
  • 13. XOR >! l operador XOR (‘^’) no E es de cortocircuito >! ara que una operación P XOR evalúe a true, uno y sólo uno de los operandos debe evaluar a true.
  • 14. class Feline { public static void main(String[] args) { Long x = 42L; Long y = 44L; System.out.print(" " + 7 + 2 + " "); System.out.print(foo() + x + 5 + " "); System.out.println(x + y + foo()); } static String foo() { return "foo"; } } >!¿Cuál es el resultado? 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