martes, 28 de febrero de 2012

Capítulo 3: Programar con operadores Java y Strings.


  • El operador de asignación (=) asigna valores a las variables.
  • En pseudocódigo la asignación se escribe := . Esto no compilaría en código java.
  • El operador de asignación adicional compuesto se usa para abreviar. Por ejemplo,  a=a+b se escribe a+=b.
  • El operador de asignación de substracción compuesto también se usa para abreviar. Por ejemplo a=a-b se escribe a-=b.
  • El operador módulo (%) devuelve el resto de una división.
  • Los operadores de incremento prefijo (++a) y decremento prefijo(--a) se usan para incrementar o decrementar un valor antes de su uso en una expresión. Por ejemplo,  int x=10;
    int y=++x;
    System.out.println("x="+x+" y="+y);

    , primero se incrementa x y luego se le asigna a y, por lo tanto el resultado es x=11 e y=11.
  •  Los operadores de incremento posfijo (a++) y decremento posfijo(a--) se usan para incrementar o decrementar un valor después de su uso en una expresión.  Por ejemplo, int x=10;
    int y=x++;
    System.out.println("x="+x+" y="+y);

    , primero se asigna x a y y luego se incrementa x, por lo tanto el resultado es x=11 e y=10.
    Otro ejemplo con estos operadores:
    class Test {
    public static void main(String[] args) {

    int num = 1;

    for (num = 0; num <3; ++num ){

      num *=2;

    }

    System.out.println("num = " + (num++));

    System.out.println("num2 = " + (num));

    }
    }


    En primer lugar num=1, al entrar al for, num vale 0. Después de hacer la multiplicación es 0. Después vuelve al for y num vale 1. La multiplicación da num=2. Al volver al bucle num se incrementa a 3 y sale del for. Ahora imprime num, pero primero muestra el valor, y después lo incrementa, por lo tanto, muestra num = 3. num2 da el resultado de este incremento, num2 = 4.
  • El operador de igualdad “igual a” (==) devuelve true si el operando de la izquierda tiene la misma referencia a instancia de objeto que el de la derecha. Por ejemplo, 
    Object a=new Object();
     Object b=new Object();
     Object c=b;




     a==b sería falso, a==c también sería falso y b==c sí es verdadero.
  • Los operadores de igualdad pueden comprobar números, caracteres, booleanos y referencias a variables.
  • El operador booleano condicional AND (&) devuelve true si  ambos operadores son true. Este operador analiza los dos, aunque el primero sea falso.
  • El operador lógico condicional AND (&&) devuelve true si  ambos operadores son true. Si el primero es falso, no analiza el otro.
  • El operador booleano condiciona OR (|) devuelve true si uno de los operadores es true. Este operador analiza los dos operadores, aunque el primero sea true.
  • El operador lógico condiciona OR (||) devuelve true si uno de los operadores es true. Si el primero es true, no analiza el otro.
  • Un objeto de la clase String representa una cadena de caracteres inmutable, es decir, nunca puede cambiar su valor.
  • Un objeto de la clase StringBuilder representa una cadena de caracteres mutable, al cual si se le puede cambiar el valor.
  • Un objeto de la clase StringBuffer representa una cadena de caracteres mutable thread-safe, es decir, que se debe usar cuando se están utilizando threads.
  • Algunas de las variables primitivas de Java son mutables por defecto, y pueden hacer inmutables usando la palabra clave final.
  • La interfaz CharSequence esta implementada por String, StringBuilder y StringBuffer. Puede ser usado como argumento en el método replace de la clase String.
  • Para saber cuántos caracteres tiene un String, se usa el método length() y para saber el número de posiciones de un array se usa length –sin parentesis-. Ejemplo:
    String string = "box";
    string.length(); // 3
    String[] stringArray = new String[3];

    stringArray.length; // 3
  • String... es lo mismo que String[].
  • El operador de concatenación (+) se usa para unir dos cadenas.
  • El operador +, si se pone en el println (3 + 3 + “3”) se imprimirá en pantalla 63, y si se pone (“3”+3+3) se imprimirá 333, ya que se evalúa de izquierda a derecha, y si empieza por cadena, lo toma todo como cadenas.
  • El método charAt de la clase String devuelve el valor primitivo char de una cadena correspondiente al indice(int) indicado.
    String a="prueba";
    char b=a.charAt(0); //b=’p’
  • El método indexOf devuelve la posición en la cadena(int) del indice (char o String)indicado. 
    
    String colores = "rojo,amarillo,verde,azul,morado,marrón";
    int inicio = colores.indexOf(","); //primera posición en la que
                                          encuentre “,” en este caso la 5
    int fin = colores.indexOf(",", inicio + 1); //primera posición en
                                                     la que encuentre “,” a
                                                     partir de la posición 6.
    
  • El método length devuelve el tamaño de una cadena (int).
  • El método replace devuelve la cadena resultante al reemplazar el String o char dado en el primer parámetro, por el String o char dado en el segundo parámetro.
  • El método startsWith devuelve un boolean según si la cadena que se le pasa empieza por el String o char indicado.
  • El método endsWith devuelve un boolean según si la cadena que se le pasa termina por el String o char indicado.
  • El método substring devuelve la cadena correspondiente al rango de índices indicado. Por ejemplo: msg = msg.substring(0,47); devuelve los 48 primeros caracteres de la cadena msg.
  • El método trim devuelve la cadena pasada sin los espacios en blanco del principio y del final.
  • StringTokemizer separa un String según un separador dado.
  • Formas de crear un array:
    int[] v;                                

    int v[];                                
    int[10] v=new int;           

    int[][] v;                             
    int v[][];                             

    int[] v[];                              

    v=new int[]{1,2}             

1 comentario:

  1. sg.substring(0,47); devuelve los 48 primeros caracteres de la cadena msg.
    El método trim devuelve la cadena pasada sin los espacios en blanco del principio y del final.
    StringTokemizer separa un String según un separador dado.
    Formas de crear un array: https://coaching-mastery.com/una-guia-de-vestimenta-para-invitados-de-boda-en-la-playa/

    ResponderEliminar