Apuntes

Tipos de datos

Rango posible de valores o datos usados durante la ejecución de un programa.

Pueden ser agrupados como primitivos y compuestos (derivados ó definidos por el usuario).

Primitivos

  • Números enteros:

    • Identificados por la palabra int (desde Integer.MAX_VALUE hasta Integer.MIN_VALUE) o long (desde Long.MAX_VALUE hasta Long.MIN_VALUE) en Java.
    • Ejemplos: -175, -95, -6L, -1, 0, 1, 8, 52L, 158
    • La letra L permite establecer si el número entero es un int o un long.
  • Números reales o de precisión: desde -∞ hasta +∞.

    • Identificados por la palabra float (Float.MAX_EXPONENT y Float.MAX_VALUE así como Float.MIN_EXPONENT y Float.MIN_VALUE) o double (Double.MAX_EXPONENT y Double.MAX_VALUE así como Double.MIN_EXPONENT y Double.MIN_VALUE) en Java.
    • Ejemplos: -192.04, -134.409F, -4.005, -1.0, -0.6, -0.9, 0, 0.3, 0.7D, 1.0, 7.0003, 146.375, 185.0739
    • Las letras F y D permiten establecer si el número real es un float o un double respectivamente.

    Tipo de dato real - Wikipedia Precisión y exactitud numérica - Wikipedia

  • Lógicos o booleanos:

    • Identificados por la palabra boolean (conformado solo por true y false) en Java.
    • Ejemplos: true (para verdadero) y false (para falso)

    Tipo de dato lógico - Wikipedia

  • Caracteres:

    • Identificados por la palabra char en Java y siempre rodeados de comilla simple (').
    • Son letras, números o signos de puntuación encontrados en la forma escrita de un lenguaje natural.
    • En Java se codifican mediante Unicode.
    • Ejemplos: '!', '@', '%', 'a', 'á', 'A', '{', ']', '*', '4', '-', '&', ';', ',', '>', '?', '\u00e1' ('á'), '\u0040' ('@'), '\u0034' ('4'), '\u007e' ('~')

    Carácter (tipo de dato) - Wikipedia

Compuestos

  • Clases: agrupación de atributos y métodos. Los atributos son de cierto tipos de datos primitivos o inclusive de otros tipos de datos compuestos mientras que los métodos reciben/regresan cierto tipos de datos primitivos o inclusive otros tipos de datos compuestos.

    • Identificados por la palabra class.
    • Forman una de las unidades de abstracción para la Programación Orientada a Objetos.
    • Ejemplos:

        public class <Nombre de la Clase> {
            <Cuerpo de la Clase>
        }
      
    • Es posible definir clases anidadas (clase anidada-interna o clase anidada-estática) así como clases locales (definidas en un bloque de código).

  • Arreglos: agrupación secuencial (se respeta el orden) de elementos indexados (empezando por el 0 de izq. a der.) del mismo tipo de dato y separados por ,.

    • Ejemplos: new int[] {10, 20, 30, 40, 50}, new boolean[] {true, false, false}, new String[] {"!", "hola", "mundo", "!"}, new char[] {'h', 'o', 'l', 'a'}.

    • Determinar el número de elementos: new <Tipo de Dato>[] {<Elementos>}.length.

      • La propiedad length regresa un número entero indicando la cantidad de elementos en el arreglo.
    • Acceso a los elementos: new <Tipo de Dato>[] {<Elementos>}[<Índice>].

      • El índice debe ser un númeto entero y estár en el rango de 0 al número de elementos menos uno.
    • Obtención de la representación como cadena de caracteres del contenido de un arreglo:

      • Arrays.toString(new int[] {10, 20, 30, 40, 50});
      • System.out.println(Arrays.toString(new int[] {10, 20, 30, 40, 50}));
      • System.out.println(Arrays.toString(new boolean[] {true, false, false}));
  • Cadenas de caracteres: agrupación secuencial (se respeta el orden) de caracteres (tipo de dato primitivo) indexados (empezando por el 0 de izq. a der.).

    • Identificados por la palabra String en Java y siempre rodeados de comilla doble (").
    • Toda cadena de carácter es inmutable, los caracteres que la conforman no pueden ser modificados.
    • Ejemplos: "¡hola mundo!", "1qaz@wsx.com", "4", "-0023.01200", "áÁéÉíÍóÓúÚ", " ?=)(/&%$·! ", new String(new char[] {'h', 'o', 'l', 'a'}).

    • Determinar el número de caracteres: new String[] {<Caracteres>}.length.

      • La propiedad length regresa un número entero indicando la cantidad de caracteres en la cadena de caracteres.
    • Obtención de un caracter: new String[] {<Caracteres>}.charAt(<Índice>).

      • El índice debe ser un númeto entero y estár en el rango de 0 al número de elementos menos uno.
    • Obtención de un arreglo de caracteres a partir de una cadena de caracteres:

      • "¡hola mundo!".toCharArray()

    Cadena de caracteres - Wikipedia

Expresión

  • Es toda instrucción que al ser ejecutada es sustituida por algún valor.
  • Toda expresión tiene un tipo de dato.
  • Una forma de establecer expresiones es mediante el uso de operadores sobre los tipos de datos.
  • Ejemplos:

    • 3 + 47
    • 45 - 1035
    • 8 * 432
    • -9 + -4-13
    • !truefalse
    • "¡hola" + " " + "mundo!""¡hola mundo!"
    • new String(new char[] {'a', 'b', 'c'}).length3
    • (new int[] {10, 20, 30}[1]) * (new int[] {40, 50, 60}[1])1000
    • "¡" + "hola" + " " + "mundo" + "!" → `"¡hola mundo!"

Operadores

Aritméticos

  • Suma:
    • int: 6 + 28, 7 + 2 + 8 + 1229, -6 + -4 + 7 + -2-5, (6 + 5) * (-3 + -8) + (25 / 5 - 3)-119
    • double: 10.2 + 5.315.5, 0.10 + 0.901.0, -4.30 + -2.1-6.40, (8.34 - 6.1) * 0.3 + (0.45 + 3.6)4.72
  • Múltiplicación:
    • int: 4 * 624, -5 * -315, 8 * -4-32, (5 + 2) * (3 + 7) - (6 * 5)40

Variables

Clase

  • Representa una unidad de abstracción para la construcción de objetos del mundo real.
  • Su definición establece las caracteristicas (también llamados atributos o propiedades) que todo objeto del mundo real tiene.
  • Definición / Código fuente / Sintaxis:

     public class NombreDeLaClase {
     }
    
  • En Java:

    • El código fuente debe ser guardado en un archivo de texto con el mismo nombre de la clase y la extensión .java. En este caso NombreDeLaClase.java.
    • El código fuente se compila en la línea de comandos del sistema operativo mediante: javac NombreDeLaClase.java. Si no se presenta algùn error en la compilación se generará el "archivo ejecutable" NombreDeLaClase.class.
    • El "archivo ejecutable" NombreDeLaClase.class es dado a la Máquina Virtual de Java (JVM) para su ejecución en la línea de comandos del sistema operativo mediante: java NombreDeLaClase.

Atributos o propiedades

  • Definición / Código fuente / Sintaxis: private <tipo de dato> nombreDelAtributo;

    • Ejemplos:

        private int primerAtributo;
        private double segundoAtributo;
        private boolean tercerAtributo;
        private char cuartoAtributo;
        private String quintoAtributo;
      

Métodos

  • Definición / Código fuente / Sintaxis: public <tipo de dato> nombreDelMétodo(<tipo de dato> nombreDelParámetro) { <instrucciones> }

    • Ejemplos:

        public int primerMétodo(int primerParámetro) {
           ...;
           ...;
           return 10;
        }
        public double segundoMétodo(double primerParámetro) {
           ...;
           ...;
           return 10.45;
        }
        public boolean tercerMétodo(boolean primerParámetro) {
           ...;
           ...;
           return false;
        }
        public String cuartoMétodo(String primerParámetro) {
           ...;
           ...;
           return "¡hola mundo!";
        }
        public boolean quintoMétodo(int primerParámetro, char segundoParámetro, String tercerParámetro) {
           ...;
           ...;
           return true;
        };