SlideShare una empresa de Scribd logo
1 de 271
Descargar para leer sin conexión
Taller Programación III
                   Java


Introducción al
Lenguaje de Programación
Java




            Profesor: Marcelo Montecinos C.
                                              1
Taller Programación III
                        Java
    ¿ Por qué JAVA (por qué tan famoso ) ?
Orientado al objeto (tendencia en boga)
Simple (similar a c, sin complejidades)
Multiplataforma (Windows, PowerMac, Unix)
Robusto (hace chequeos, elimina punteros)
Recolección de basura automática
Bibliotecas estándar
Realmente portable en un 100%
Facilidades para programación en redes




                 Profesor: Marcelo Montecinos C.
                                                   2
Taller Programación III
                   Java

         Java - Características

Plataforma independiente (portable)



Dinámico (constantemente evolucionando)



Fortalece la seguridad y la portabilidad




            Profesor: Marcelo Montecinos C.
                                              3
Taller Programación III
                           Java

          JAVA es un lenguaje interpretado



                                                          Salida
                                     P1.class              del
P1.java
                                                          Prog.




   Compilador de java (específico x plataforma) javac P1.java

   Intérprete de java (específico x plataforma) java P1 (class)
                    Profesor: Marcelo Montecinos C.
                                                              4
Taller Programación III
                  Java

Java - Características
 Java -Máquina Virtual (JVM)
        JVM

                  Interpretador
                       Java

                Ambiente Runtime


             Sistema Operativo

                      Hardware
           Profesor: Marcelo Montecinos C.
                                             5
Taller Programación III
                              Java

       Java - Características
     ¿Cómo trabaja la tecnología Java?
(Editor de texto)




                           (Programa traducido
                              a bytes-code)


                                         ¿qué sucede en este paso?
                       Profesor: Marcelo Montecinos C.
                                                               6
Taller Programación III
                        Java

 Java - Características
¿Cómo trabaja la tecnología Java?




                 Profesor: Marcelo Montecinos C.
                                                   7
Taller Programación III
                     Java
      Estructura de un Programa en Java
// Este es el esqueleto de un programa en Java

class <nombre del Programa>

{                                               Se utiliza para
                                                abrir un bloque de
                                                instrucciones.
    /* Definiciones globales*/

    /* Metodo Principal*/

    /* Otros Métodos*/
                                                Se utiliza para
}                                               cerrar un bloque
                                                de instrucciones
              Profesor: Marcelo Montecinos C.
                                                                     8
Taller Programación III
                             Java

    Estructura de un Programa en Java
Los comentarios en Java pueden hacerse de dos maneras:
     Si sólo quiero comentario de una línea coloco      // al inicio de es esta

     // Este es el esqueleto de un programa en Java

     class <nombre del Programa>
     {

         /* Definiciones globales*/         Si quiero comentario de mas de una línea
                                            coloco /* al inicio del comentario y */ al final

         /* Este es el
          Método Principal*/

         /* Otros Métodos*/

     }                Profesor: Marcelo Montecinos C.
                                                                                   9
Taller Programación III
                         Java
Estructura de un Programa en Java
 // Este es el esqueleto de un programa en Java

                                                         Deben seguir las
 class <nombre del Programa>                             convenciones utilizadas en
 {                                                       algoritmo.



     /* Definiciones globales*/
                                             Aquí se definen las variables que yo
                                             deseo que se puedan utilizar en todo
                                             mi programa.
     /* Método Principal*/
                                              Cada aplicación de Java debe tener
                                              un método principal llamado
                                              main, que define donde comienza el
     /* Otros Métodos*/                       flujo del programa.

 }                Profesor: Marcelo Montecinos C.
                                                                             10
Taller Programación III
                        Java

// Este es el esqueleto de un programa en Java
class <nombre del Programa>
{
  /* Definiciones globales*/

        public static void main (String args[])
        {
                                                   Todo el código de un
                                                   método estará entre la llave
            /* Definiciones locales*/              de apertura
                  ...                              ( { ) y la correspondiente
                  ...                              llave de cierre ( } ).
            /* cuerpo de instrucciones */
                  ...
                  ...

        }                  Sintaxis del método Main
}
                 Profesor: Marcelo Montecinos C.
                                                                          11
Taller Programación III
                                              Java
                                                            La palabra public es un especificador de
                                                            acceso. En este caso el main debe ser
// Este es el esqueleto de un programa en Java
                                                            declarado public ya que es llamado por
class <nombre del Programa>
{
                                                            código que está fuera de su clase, cuando el
  /* Definiciones globales*/                                programa comienza.

    public static void main (String args[])

          {                                                 La palabra static permite que main sea
                                                            llamado por el intérprete de Java antes de
              /* Definiciones locales*/                     que se cree cualquier objeto .
                       ...
                       ...
              /* cuerpo de instrucciones */                 La palabra void indica al compilador que
                       ...                                  main no devuelve ningún valor.
                       ...
          }
}                                                           String args[], declara una variable args
                                                            que es una especie de vector que puede
                                                            contener cadenas de caracteres.
     Sintaxis del método Main
                                      Profesor: Marcelo Montecinos C.
                                                                                                 12
Taller Programación III
                                     Java


// Este es el esqueleto de un programa en Java
class <nombre del Programa>
{
  /* Definiciones globales*/

        public static void main (String args[])
        {

            /* Definiciones locales*/                           Aquí se definen las variables que
                  ...                                           solo voy a utilizar en el método
                  ...                                           principal.
            /* cuerpo de instrucciones */
                  ...
                  ...                                 Después de cada instrucción se coloca ;
        }
}
                                Sintaxis del método Main
                              Profesor: Marcelo Montecinos C.
                                                                                            13
Taller Programación III
                          Java

      Ejemplo
// Este programa escribe un texto

class EjemploTexto {

       public static void main (String args[])
       {
          System.out.println(“El que pregunta algo que no
       entiende se siente ignorante solo una vez, el que no pregunta
       lo que no entiende se sentirá ignorante toda su vida”);
       }
}




                   Profesor: Marcelo Montecinos C.
                                                                14
Taller Programación III
                     Java

  Salida de datos

Para mostrar un texto por pantalla puedo
hacerlo de dos maneras:

                         System.out.println (texto);

                         System.out.print (texto);




              Profesor: Marcelo Montecinos C.
                                                       15
Taller Programación III
                      Java
 Salida por pantalla

import java.io.*;

System.out.println(elementos);
System.out.println();
System.out.print(elementos);


System.out.println(quot;holaquot;);   // escribe quot;holaquot;
System.out.println(5);      // escribe 5
int i = 5; System.out.println(i) ; // escribe 5;
double d=6.4; System.out.println(d); // escribe 6.4;
double d=6.4; System.out.println(quot;d=quot;+d); // escribe d=6.4;


               Profesor: Marcelo Montecinos C.
                                                        16
Taller Programación III
                               Java
        Un primer programa en JAVA

public class Hello {
       public static void main(String args[ ]) {
               System.out.println(“Hola Mundo“);
       }
}
  Todo programa es escrito como el método estático llamado main en una
  clase cualquiera
  Este método se empieza a ejecutar cuando se invoca el intérprete de java
  para una clase dada
  args es un arreglo de Strings que contiene los parámetros
  con los que fué invocado el programa.


                        Profesor: Marcelo Montecinos C.
                                                                   17
Taller Programación III
                   Java

Declaración de Variables

   tipo nombre;
   tipo nombre1, nombre2, nombre3;
   tipo nombre = valor;


Declaración de Constantes:

 static final tipo nombre = valor;




            Profesor: Marcelo Montecinos C.
                                              18
Taller Programación III
                           Java
    Definición de variables
Los datos son almacenados en variables, que se encuentran en la
memoria, formados por dos componentes el nombre que las
identifica y la celda con el valor almacenado.
                       Memoria
               monto 25600.00
               carnet 9702634
                 sexo ‘F’

              nombre ‘Pedro Perez’
            contador      6

                    Profesor: Marcelo Montecinos C.
                                                                  19
Taller Programación III
                     Java

 Tipos de datos
                                                4
                Integer (enteros)               5
                                                237
Numérico



                Floating Point                  13.45
                (punto flotante)



              Profesor: Marcelo Montecinos C.
                                                        20
Taller Programación III
                       Java

  Tipos de datos

                                Byte : 8 bits     -27 ..... 27 –1

Integer (enteros)               Short : 16 bits

                                Int : 32 bits

                                Long : 64 bits




                Profesor: Marcelo Montecinos C.
                                                                    21
Taller Programación III
                   Java

Tipos de datos

                                    Float : 32 bits
 Floating Point
 (punto flotante)
                                    Double : 64 bits




            Profesor: Marcelo Montecinos C.
                                                       22
Taller Programación III
                    Java

Tipos de datos

Caracteres         char : ‘a’, ‘z’, ‘D’, ‘%’, ‘s’,’#’….


Cadenas de         String: “Pedro Garcia”
caracteres               “Juan Lopez”
                         ”Rojo”


Lógicos            boolean:                true
                                           false



             Profesor: Marcelo Montecinos C.
                                                          23
Taller Programación III
                       Java

   Tipos primitivos de datos en JAVA


enteros: int, long, short, byte
Const. 1, -1, 1024, 1L
reales: float, double
Const. 1.0, -3.14159, 1.5e4, 1.0f
caracter: char
Const. ‘a’, ‘X’, ‘@’
lógico: boolean
Const. true, false
Constantes de String: “Hola“,“12 de Abril“
                Profesor: Marcelo Montecinos C.
                                                  24
Taller Programación III
                      Java

 Declaración de variables
/* Este programa declara Algunas variables */
class declaraVar {
       public static void main (String args[])
       {
          int x, y;
          float z = 3.1416;
          double w =3.1415;
          boolean bandera = true;
          char c;
          String str;
          String st1 =“María”;
          str = “blanco”;
       }
}                Profesor: Marcelo Montecinos C.
                                                   25
Taller Programación III
                          Java

    Asignación de valores a variables
Se puede dar valores a las variables en el momento de
su declaración o en una instrucción de asignación
independiente una vez que ha sido declarada.

Se utiliza el signo = en ambos casos.

Ejemplo:

      int x =5;
      boolean t;
      t = true;

                   Profesor: Marcelo Montecinos C.
                                                        26
Taller Programación III
                       Java
   Asignación de valores a variables
Las asignaciones también pueden ser expresiones en
notación INFIJA.

Ejemplo:
 monto = pvp * cantidad ;

Donde pvp y cantidad deberán ser variables
anteriormente declaradas y con valor previo
asignado.

                Profesor: Marcelo Montecinos C.
                                                     27
Taller Programación III
                       Java
   Asignación de valores a variables

/* Este programa declara Algunas variables */
class declaraVar {
       public static void main (String args[])
       {
          int x, y, z;
          x = 2;
          y = 4;
          z = x * y;
          System.out.println(“El valor de z es “ + z);
       }
}

                Profesor: Marcelo Montecinos C.
                                                         28
Taller Programación III
                         Java

     Asignación de valores a variables


  Algunas de las operaciones a utilizar en la asignación:

       ()     indica prioridad de ejecución
       *      multiplicación
       /      división decimal
       +,-    suma, resta

Ejemplo:
      islv = ( (pvp * cantidad) * porcIslv) ) / 100;
                  Profesor: Marcelo Montecinos C.
                                                       29
Taller Programación III
                       Java
  Operadores


Igualdad y desigualdad: == , !=
Comparación: <, <=, >, >=
Suma y resta unarios: +, -
Suma, multiplicación, división y módulo: +, -, *, /, %
Incremento y decremento prefijos y posfijos: ++, --
Desplazamiento con signo y sin signo: <<, >>, >>>
Negación lógica unaria de bits: ~
Lógica de bits: &, |, ^
Lógica booleana: &&, ||
                Profesor: Marcelo Montecinos C.
                                                     30
Taller Programación III
                            Java
Asignación


Utilización de operadores:
   var1   =   var2    +   var3;   //   asignar   a     var1   el   valor   de   var2   +   var3
   var1   =   var2    -   ver3;   //   asignar   a     var1   el   valor   de   var2   -   var3
   var1   =   var2    *   ver3;   //   asignar   a     var1   el   valor   de   var2   *   var3
   var1   =   var2    /   ver3;   //   asignar   a     var1   el   valor   de   var2   /   var3
   var1   =   var2    %   ver3;   //   asignar   a     var1   el   valor   de   var2   %   var3


Asignaciones de incremento
decremento:
   variable++;      //               añadir      uno    a   variable
   variable--;      //               restar      uno    a   varibale
   variable += exp; //               añadir      exp    a   variable
   variable -= exp; //               restar      exp    a   variable

                     Profesor: Marcelo Montecinos C.
                                                                                            31
Taller Programación III
                       Java

  Asignación de valores a variables
/* Este programa declara Algunas variables */
class declaraVar {
       public static void main (String args[])
       {
          int x, y, z;
          x = 2;
          y = 4;
          z = (x + y)/ 2;
          System.out.println(“El valor de z es “ + z);
       }
}

                Profesor: Marcelo Montecinos C.
                                                         32
Taller Programación III
                  Java
Expresiones


Grupos de Precedencia
     Grupo   0:   ( )
     Grupo   1:   ++, --, + (unario), - (unario)
     Grupo   2:   *, /, %
     Grupo   3:   +, -, + (concatenación)
Funciones especiales:
   Seno x => Math.sin(x)
   x2 => Math.pow(x,2)
   Math.round(6.6) => 7

           Profesor: Marcelo Montecinos C.
                                                   33
Taller Programación III
                       Java

   Expresiones y asignación


Aritmeticas: suma + 20 * c / (mod % 3)
Relacionales: a > b, b >= c, c != 4, a == 0
De String: “hola “+ nombre + “ hoy es “+
                    dia + “de”+mes
Casts: (int) pi (pi = 3.1) (int) (Math.random()*100)+1)
Otros: a == 1 ? a+1 : a-1
Asignacion: a = 1;
Asignación como operador: a = b = c = d = 0;
boolean cero = ( b = c - 10) == 0;
                Profesor: Marcelo Montecinos C.
                                                          34
Taller Programación III
                      Java

 Conversiones entre tipos


Asignar una variable a otra cuyo tipo es mayor de
tamaño:

   byte => short => int => long => float => double



Para pasar de un tipo a otro menor en tamaño,
tenemos que hacer una conversión explícita de
tipos:º

    (tipo)expresion
               Profesor: Marcelo Montecinos C.
                                                     35
Taller Programación III
                           Java
      Conversiones de tipo
Java no reclama si un tipo de menor rango se convierte as uno
de mayor rango.
  byte < short < int < long < float < double

Tipo        Bits       Rango
int         32         -2**31 .. 2**31-1
short       16         -2**15 .. 2**15-1
byte        8          -2**7 .. 2**7-1
long        64         -2**63 .. 2**63-1
float       32              -10**32 ..                10**32
double      64             -10**300 ..                10**300
                    Profesor: Marcelo Montecinos C.
                                                                36
Taller Programación III
                        Java
  Ejemplos

int i = 1;
long l = i; //ok
l = 1000000000000;
float f = l; //ok
double d= 1.0e24;        int i = d;       // Error
float f = 1.0f;         int i = f;      // Error
short s = i;       //Error
double d = 1.0;          int i = (int)d; //ok
int i = 256;
byte b = (byte)i; //ok pero b ==0;

                 Profesor: Marcelo Montecinos C.
                                                     37
Taller Programación III
                    Java
 Excepciones definidas por el usuario

public class nombre extends Exception {
    public nombre() {}
    public nombre(String s) { }
}


throw new nombre(“mensaje”);




             Profesor: Marcelo Montecinos C.
                                               38
Taller Programación III
                        Java

 Ejemplo


public void leeArchivo(String nombre) throws IOException {
   BufferedReader fin = new BufferedReader(new FileReader(nombre));
   try {
        while(true) {
            cadena = fin.readLine();
            System.out.println(cadena);
        }
    } catch (EOFException e) {
        System.out.println(quot;Fin del archivoquot;);
    }
}




                 Profesor: Marcelo Montecinos C.
                                                              39
Taller Programación III
                      Java

    Entrada desde teclado




import java.io.*;

BufferedReader entrada = new
BufferedReader(new InputStreamReader(System.in));




String cadena = entrada.readLine();

               Profesor: Marcelo Montecinos C.
                                                 40
Taller Programación III
                            Java
       Lectura de números

int i=Integer.valueOf(in.readLine()).intValue();
double d=Double.valueOf(in.readLine()).doubleValue();



int i=Integer.valueOf(in.readLine().trim()).intValue();
double d=Double.valueOf(in.readLine().trim()).doubleValue();




                     Profesor: Marcelo Montecinos C.
                                                          41
Taller Programación III
                                    Java

       Lectura de datos
Este programa se encarga de pedir el ingreso de un número, para luego mostrarlo
en pantalla.

/* 1) */ import java.io.*;
/* 2) */ public class LectTecladoApp
/* 3) */ {
/* 4) */ public static void main(String Arg[ ]) throws IOException
/* 5) */ {
/* 6) */ BufferedReader entrada= new BufferedReader(new InputStreamReader(System.in));
/* 7) */ int num;
/* 8) */ System.out.print(quot;Ingrese numero : quot;);
/* 9) */ num = Integer.parseInt(entrada.readLine( ));
/* 10) */ System.out.println(quot;Ud ingreso el numero : quot; + num );
/* 11) */ }
/* 12) */ }                  Profesor: Marcelo Montecinos C.
                                                                                         42
Taller Programación III
                      Java

1) Se invoca a la librería de entrada y salida io
(Input,Output), para usar en nuestro programa todas sus
clases disponibles.

import : Indica que se tienen importar (incluir) cierta
librería.
java.io : Acceso a la librería io.
java.io.* : Selecciona todas las clases disponibles.
4) Declaración del programa principal con opción de control
de errores.

throws IOException : Indica que cualquier error de
entrada o salida de datos, será manejado en forma interna
(automática) por el programa.


6) Se crean las instancias necesarias para crear un objeto
que permita manejar la lectura de datos por teclado.
               Profesor: Marcelo Montecinos C.
                                                             43
Taller Programación III
                        Java


BufferedReader : Clase perteneciente a la librería io que
crea un buffer de entrada donde se almacenarán los
carácteres ingresados por teclado.
in : Variable de tipo BufferedReader.


7) Se declara la variable num de tipo entero (int).
8) Se llama al método print para escribir un mensaje en
pantalla dejando el cursor inmediatamente a continuación
del mensaje.




                 Profesor: Marcelo Montecinos C.
                                                            44
Taller Programación III
                       Java

9) Se lee el número, asignando el valor a la variable num.

in.readline : Método que retorna el quot;stringquot; leído por
teclado.
Integer.parseInt : Método que convierte un string (cadena
de caracteres) en un dato numérico de tipo int.
Integer : Clase estándar que no necesita ser instanciada
(está disponible por defecto).


10) Se llama al método println para escribir un mensaje en
pantalla que consta de una parte estática y otra variable.

El método println y print soportan varios objetos
concatenados mediante el operador + , logrando imprimir
cadenas de carácteres y variables numéricas.


                Profesor: Marcelo Montecinos C.
                                                             45
Taller Programación III
              Java




Estructuras de un Programa




       Profesor: Marcelo Montecinos C.
                                         46
Taller Programación III
                                      Java
                               Debemos recordar:
class CSumar
                                                            Todas las instrucciones terminan
{
                                                            con punto y coma “ ; ”
Static int v1, v2, suma;

                                                            Todo el código de un método
    public static void main (String args[])                 o bloque de instrucciones
                                                            estará entre la llave de apertura
    {
                                                            ( { ) y la correspondiente llave
          System.out.println(quot;Introduzca v1quot;);
                                                            de cierre ( } ).
          v1 = CTeclado.ReadInt();
          System.out.println(quot;Introduzca v2quot;);              Los espacios en blanco se
                                                            permiten entre los elementos
          v2 = CTeclado.ReadInt();                          del código fuente. Los espacios,
          suma = v1 + v2;                                   los tabuladores y nuevas líneas
                                                            deben usarse para dar
    }                                                       legibilidad al código.
}


                               Profesor: Marcelo Montecinos C.
                                                                                       47
Taller Programación III
                                         Java

class CSumar
                                Palabras Reservadas
                                                                    Son palabras que tienen un
{
                                                                    significado especial dentro
    static int v1, v2, suma;                                        del lenguaje , en nuestro
                                                                    caso JAVA.

    public static void main (String args[])
    {


           System.out.println(quot;Introduzca v1quot;);
           v1 = CTeclado.ReadInt();
           System.out.println(quot;Introduzca v2quot;);
           v2 = CTeclado.ReadInt();
           suma = v1 + v2;
    }
}

                                  Profesor: Marcelo Montecinos C.
                                                                                           48
Taller Programación III
                          Java
                Identificadores
Son identificadores, los nombres que reciben las
variables, constantes, clases, métodos o instancias
de un programa.
 Comienzan con una letra y pueden contener letras y
 números.

 Son sensitivos a las mayúsculas y minúsculas.

 Pueden contener palabras claves del lenguaje siempre y
 cuando no sean completamente iguales.

 Pueden tener cualquier longitud

                   Profesor: Marcelo Montecinos C.
                                                          49
Taller Programación III
                                 Java

         Algunas convenciones en cuanto a identificadores.

Programas: deben ser nombres, escritos en modo mixto y con la primera
letra de cada palabra en mayúsculas.

Métodos: deben ser verbos, en modo mixto, con la primera letra en
minúscula. Las palabras se separarán usando letras mayúsculas.

Variables: deben ser nombres que permitan deducir lo que contienen,
siguen las mismas reglas que los subprogramas. Los identificadores de
una sola letra deben evitarse. (con sus excepciones)




                          Profesor: Marcelo Montecinos C.
                                                                        50
Taller Programación III
                    Java
        Inicialización de Variables.
En Java, cuando una variable es creada, Java le da
un valor inicial según la siguiente tabla.


  byte,short, int                                  0
  long                                              0L
  float                                             0.0f
  double                                           0.0d
  char                                         ‘u0000’
  (null)
  boolean                                         false
  variables referencia                              null
             Profesor: Marcelo Montecinos C.
                                                           51
Taller Programación III
          Java




 Java Arreglos




   Profesor: Marcelo Montecinos C.
                                     52
Taller Programación III
                   Java

                                              Arreglos
 Es un tipo especial de dato al que se hace
referencia por un nombre.

 Está compuesto por una colección de
elementos del mismo tipo de datos que se
almacenan consecutivamente en memoria.

Pueden ser creados de cualquier tipo.




            Profesor: Marcelo Montecinos C.
                                                         53
Taller Programación III
                      Java
  Arreglos
Se pueden declarar como: int[] A;              int
A[];
Esto es la declaración del puntero al arreglo, no se
especifica tamaño en la declaración;
Inicialización: A = new int[10];
int[] A = new int[10];
Empiezan desde 0: for(int i=0; i <
10; ++i) A[i] = 0;
Se puede averiguar el largo: int
largo = A.length;
length es un campo del objeto
arreglo y no un método. No es
necesario el método ya que el
          Profesor: Marcelo Montecinos C.
                                                       54
tamaño, como el contenido de un
Taller Programación III
                   Java

                                              Arreglos
 Se utilizan para agrupar información
relacionada

Pueden tener ser de una o más dimensiones. Los
de una dimensión los denominaremos vectores
y de los de dos dimensiones matrices o tablas

 Para accesar un elemento particular del
arreglo, se utilizan los índices



            Profesor: Marcelo Montecinos C.
                                                         55
Taller Programación III
                            Java
                                                       Vectores
Ejemplo de un vector que contiene 7 números enteros

 0     1      2      3        4        5         6            índices
 3     6      8      1        0        4         2      Elementos del
                                                        vector




           Elemento que ocupa la
           posición 3 en el vector




                     Profesor: Marcelo Montecinos C.
                                                                        56
Taller Programación III
                         Java
                                                    Vectores
 Declaración en Java
           tipoDato[ ]          nombreVariable;

           tipoDato          nombreVariable[ ];
Para declarar un vector de número enteros, al cual se le
dá el nombre de miVector se puede hacer de la siguiente
manera:
               int[ ] miVector;
               // o también
               int miVector[ ];


                  Profesor: Marcelo Montecinos C.
                                                               57
Taller Programación III
                         Java
    Declaración                                          Vectores
                                       int[] miVector;
                                       // o también
    Creación                           int miVector[];


   nombreVector = new tipoDato[tamaño];

Cuando se declara una variable vector, esta no tiene
ningún valor. Antes de asignar cualquier valor, se debe
reservar un espacio en memoria, utilizando el operador
new y asignarlo a la variable.

Continuando con el ejemplo anterior
                 miVector = new int[7];

                  Profesor: Marcelo Montecinos C.
                                                              58
Taller Programación III
                         Java

                                                    Vectores
 Creación:
                                 Creación:

                       miVector = new int[7];



Al reservar espacio para los elementos de un vector,
mediante new, se inicializa automáticamente en cero su
contenido.
Cuando se ejecuta esta sentencia de creación , la
varianble miVector, hará referencia a un vector de 7
elementos enteros.

   New: operador especial que reserva espacio en memoria


                  Profesor: Marcelo Montecinos C.
                                                               59
Taller Programación III
                           Java
                                                      Vectores

Inicialización:
Dependiendo del tipo de datos que contenga un vector,
estos son inicializados por defecto con los siguientes valores:

    Si son vectores numéricos, se inicializan en cero.

    Si son vectores de caracteres, se inicializan en ‘/u000’.

    Si son vectores booleanos, se inicializan en false.




                    Profesor: Marcelo Montecinos C.
                                                                  60
Taller Programación III
                          Java
                                                     Vectores
                 Creación:
               miVector = new int[7];


Inicialización
Un vector completo se puede inicializar de la siguiente
manera



           miVector = {3, 6, 8, 1, 0, 4, 2};




                   Profesor: Marcelo Montecinos C.
                                                                61
Taller Programación III
                                   Java
         Creación:                                                  Vectores
                                   miVector = new int[7];


Utilización
                     nombreVector [índice]
 Para accesar un elemento de un vector, se coloca el
 nombre del vector y entre corchetes el índice del elemento
 que se desea.
  Por ejemplo, si se desea obtener el número 8 del siguiente vector:
                      0        1          2       3         4   5    6
                      3        6          8       1         0   4    2

                                   miVector [2]
                          Profesor: Marcelo Montecinos C.
                                                                         62
Taller Programación III
                             Java
                                                        Vectores
     Creación:

                  miVector = new int[7];
Utilización

Los índices en un vector, van desde 0 hasta el tamaño – 1.
El tamaño de un vector se obtiene con el método length,
con la siguiente sintaxis:

                 nombreVector.length

En nuestro ejemplo:

                       miVector.length

                      Profesor: Marcelo Montecinos C.
                                                                   63
Taller Programación III
                            Java
                                                       Vectores
Ejemplo: crear un vector de 5 posiciones, rellenarlo y
luego mostrar su contenido.

class EjemploVec
{
         static int miVector[ ];
         public static void main (String arg[])
         {

                 miVector = new int[5];
                 llenarVector();
                 mostrarVector();
                 System.out.print(quot;El tamano de mi vector es quot;);
                 System.out.println(miVector.length);

        }

                     Profesor: Marcelo Montecinos C.
                                                                   64
Taller Programación III
                               Java
                                                          Vectores
static void llenarVector()
{
         for (int i=0; i <= 4; i++)
         {
                    System.out.println(quot;Intro. numero de posicion quot; + i + quot; quot;);
                    miVector[i] = CTeclado.ReadInt();
         }
}
static void mostrarVector()
{
         for (int i=0; i <= 4; i++)
                    System.out.print(miVector[i] + quot; quot;);
}

}// fin de clase

                        Profesor: Marcelo Montecinos C.
                                                                            65
Taller Programación III
                      Java
                                                     Matrices
    0   1       2          3        4            5
0
                                                       (matriz 2 3)
1

2

3
                                                      (matriz 4 0)
4

5
               Profesor: Marcelo Montecinos C.
                                                                     66
Taller Programación III
                 Java
                                            Matrices
Son arreglos de dos dimensiones

La información es dispuesta en filas y columnas

Para accesar un elemento se deben especificar
dos subíndices: fila y columna.

Pueden ser creadas de cualquier tipo

Pueden ser vistos como vectores de vectores




          Profesor: Marcelo Montecinos C.
                                                       67
Taller Programación III
                         Java
                                                    Matrices
Declaración:

          tipoDato        nombreVariable[ ][ ];

 Para declarar una matriz de números enteros, llamada
 miMatriz, se debe hacer de la siguiente manera:


                   int miMatriz[ ][ ];




                  Profesor: Marcelo Montecinos C.
                                                         68
Taller Programación III
                         Java
                                                    Matrices
Creación:

nombreMatriz = new tipoDato[filas][columnas];


Para crear una matriz de 2 filas y 3 columnas de
números enteros, llamada miMatriz, se escribe




              miMatriz = new int [2][3];


                  Profesor: Marcelo Montecinos C.
                                                               69
Taller Programación III
                                Java
                                                                    Matrices
Creación:          miMatriz = new int [2][3];

                                             genera




            miMatriz[0][0]      miMatriz[0][1]             miMatriz[0][2]



        miMatriz[1][0]          miMatriz[1][1]             miMatriz[1][2]




                         Profesor: Marcelo Montecinos C.
                                                                               70
Taller Programación III
                       Java
                                                  Matrices
Creación:   miMatriz = new int [2][3];



      Primero crea un vector de 2 elementos


                        Elemento 0


                        Elemento 1




                Profesor: Marcelo Montecinos C.
                                                             71
Taller Programación III
                          Java
                                                         Matrices

Creación:     miMatriz = new int [2][3];


  Luego cada elemento lo transforma en un
  vector de 3 elementos

             miMatriz[0][0] miMatriz[0][1]    miMatriz[0][2]   Fila 0


            miMatriz[1][0] miMatriz[1][1]     miMatriz[1][2]   Fila 1



             Columna 0                        Columna 2
                   Profesor: Marcelo Montecinos C.
                                                                        72
Taller Programación III
                           Java
                                                      Matrices
Ejemplo: Crear una matriz de 2 filas y 3 columnas, llenarla y
luego mostrar su contenido.



        class EjemploMat
        {
                 public static void main (String arg[])
                 {
                          int miMatriz[][];

                           miMatriz = new int[2][3];
                           llenarMatriz(miMatriz);
                           mostrarMatriz(miMatriz);
                }


                    Profesor: Marcelo Montecinos C.
                                                                 73
Taller Programación III
                                               Java



static void llenarMatriz(int m[][])
{
              for (int i=0; i < 2; ++i)
              {
                              for (int j=0; j< 3; ++j)
                              {
                                              System.out.println(quot;Intro. Elem. quot; + i + quot; quot; + j);
                                              m[i][j] = CTeclado.ReadInt();
                              }
              }
}
static void mostrarMatriz(int m[][])
{
              for (int i=0; i < 2; i++)
              {
                              for (int j=0; j< 3; j++)
                              {
                                              System.out.print(m[i][j] + quot; quot;);
                              }
                              System.out.println();
              }
}
}


                                     Profesor: Marcelo Montecinos C.
                                                                                                   74
Taller Programación III
                     Java
                                                Ejercicios
1. Se deben crear tres vectores vecA, vecB y
vecC de m elementos cada uno; se debe crear
otro arreglo vecNuev donde cada elemento sea
la suma de los elementos de cada arreglo.

2. Se deben crear dos vectores. En uno se
colocarán los carnet de los estudiantes que
aprobaron Cálculo 1, en otro los que
aprobaron Etica. Crear un tercer arreglo que
contenga los carnet de los estudiantes que
aprobaron ambas materias.

              Profesor: Marcelo Montecinos C.
                                                             75
Taller Programación III
                       Java

                                                  Ejercicios

3. Se deben crear dos vectores uno de ellos de n
elementos, el otro de m elementos . Llenarlos con
números ,colocándo en cada uno los elementos
ordenados de menor a mayor.
Crear un tercer vector de tamaño n+m el cual
contendrá los elementos de los vectores
ordenados de menor a mayor.




                Profesor: Marcelo Montecinos C.
                                                           76
Taller Programación III
                       Java
              Operadores
Los operadores de un lenguaje se utilizan para
combinar o modificar los valores de de un programa.

          Vamos a estudiar los
          siguientes operadores:

            Aritméticos : binarios y unitarios.

            Operadores de Asignación.

            Relacionales.

            Lógicos.

                Profesor: Marcelo Montecinos C.
                                                      77
Taller Programación III
                       Java
      Operadores Aritméticos Binarios.
                             Binarios

Operador                   Significado

  +                       Suma
  -                       Resta
  *                       Multiplicación
  /                       División entera
                          (si los operandos son de tipo entero)

  /                       División real
                          (si los operandos son reales)

  %                          Módulo, resto de división entera
                             (no es necesario que los operandos
                             sean reales)
                 Profesor: Marcelo Montecinos C.
                                                            78
Taller Programación III
                              Java
                     Operadores Aritméticos Binarios.
Veamos un ejemplo:


class CPrueba
{
   public static void main(String arg[])
   {
        int i , j;
        i=5;
        j = i % 2;
        System.out.println(quot;el valor de j es quot;+j);       1
        j = i / 2;
        System.out.println(quot;el valor de j es quot;+j);       2
        j = i * 2;
        System.out.println(quot;el valor de j es quot;+j);       10
   }
}
                       Profesor: Marcelo Montecinos C.
                                                              79
Taller Programación III
                      Java

       Operadores Aritméticos Unitarios.

     Operador                              Significado


        ++                                Incremento
        --                                Decremento




Estos operadores se pueden aplicar en dos formas,
prefija y postfija, que adquieren importancia
cuando los mismos se usan dentro de una expresión
mayor.


               Profesor: Marcelo Montecinos C.
                                                         80
Taller Programación III
                             Java
                Operadores Aritméticos Unitarios.
                                       Unitarios
    Veamos un ejemplo:


class CPrueba
{
   public static void main(String arg[])
   {
        int i;
        i=5;
        //incrementando antes o después de a

        System.out.println(quot;el valor de i++ es quot;+ i++);   5
        System.out.println(quot;el valor de i++ es quot;+ ++i);   7
    }
}

                      Profesor: Marcelo Montecinos C.
                                                              81
Taller Programación III
                              Java
                    Operadores Aritméticos Unitarios.
                                           Unitarios
        Veamos un ejemplo:


class CPrueba
{
   public static void main(String arg[])
   {
        int i;
        i=5;
        //decrementando antes o después de a

        System.out.println(quot;el valor de i-- es quot;+ i--);   5
        System.out.println(quot;el valor de i-- es quot;+ --i);   3
    }
}

                       Profesor: Marcelo Montecinos C.
                                                              82
Taller Programación III
               Java
     Operadores de Asignación.


Operador                                  Significado


=                                   asignación
+=                           asignación y suma
-=                           asignación y resta
*=                           asignación y mult.
/=                           asignación y div.
%=                           asignación y mod.




        Profesor: Marcelo Montecinos C.
                                                        83
Taller Programación III
                               Java
                       Operadores de Asignación.
        Veamos un ejemplo:

class CPrueba
{
   public static void main(String arg[])
   {
        int i , j;
        i=5;
        i += 2;     // equivale a i = i + 2;

         System.out.println(quot;el valor de i es quot;+i);       7
         i = 5;
         i %= 2;  // equivale a i = i % 2;

         System.out.println(quot;el valor de i es quot;+i);       1
    }
}                       Profesor: Marcelo Montecinos C.
                                                              84
Taller Programación III
                     Java
             Operadores Relacionales.


Operador    Nombre                Ejemplo       Respuesta

==         igual                   1   == 2       false
!=         distinto                1   != 2       true
>          mayor que               1   >2         false
<          menor que               1   <2         true
>=         mayor o igual           1   >= 2       false
<=         menor o igual           1   <= 2       true




              Profesor: Marcelo Montecinos C.
                                                          85
Taller Programación III
              Java

          Operadores Lógicos.

Operador                         Significado

&&                                       and
||                                        or

Tablas de valores lógicos:

AND
       T F                      OR
                                         T F
T      T F                      T        T T
F      F F                      F        T F
       Profesor: Marcelo Montecinos C.
                                               86
Taller Programación III
                Java

          Operadores
Orden de precedencia en los operadores:

 1.    ++ --
 2.    * / %
 3.    + -
 4.    < > <= >=
 5.    ==    !=
 6.    &
 7.    |
 8.    = *= /= %=                          +=
       -=


         Profesor: Marcelo Montecinos C.
                                                87
Taller Programación III
                   Java
             Expresiones Lógicas
Las expresiones lógicas se definen como un
conjunto de operadores y operandos.




   Son las que devuelven como resultado un valor booleano
   (true o false).

   Contienen operadores relacionales y/o operadores lógicos.

Ejemplo:
    (X >= Y)
    (X >= Y) && (X>= Z)
    (A != 0) || (AMarcelo Montecinos C.
           Profesor:
                     != 5)
                                                       88
Taller Programación III
 Los argumentos Java un programa
                de
Si se invoca al programa P1 de ka siguiente
manera: java P1 estos son parametros
entonces en el programa se tendrá args[0] =
“estos”, args[1] = “son”, args[2] =
“parametros”.
Se reciben como un arreglo de strings en la
variable declarada como parámetro del programa
String args[]

   public class Parametros {
          public static void main(String args[]) {
                 for(int i=0; i < args.length; i++)
   System.out.pritnln(args[i]);
        }
   }
             Profesor: Marcelo Montecinos C.
                                                      89
Taller Programación III
                          Java
    Exceptions
Una Exeption es un evento que rompe la ejecución normal de un
programa (debido a un error). Cuando ocurre un evento como este un
objeto de la clase Exception es generado o “lanzado” (throw).
Existen varios tipos de clases derivadas Exception dependiendo de
que fue lo que originó el evento: IOException,
IndexOutOfBoundsException, UnknownHostException, etc.
Cuando esto sucede, el intérprete de JAVA busca un exception handler
adecuado para esta exception, que ejecuta un pedazo de código
(programado por el usuario) que debería reaccionar en forma adecuada
a esta falla del programa. Esto se llama “atrapar una exception”
(catch).
Cuando no se ha escrito ningún ningún handler que atrape esta
exception, el programa se detiene (se cae). La razón para introducir
exceptions es que la programación para reaccionar ante fallas se hace
más fácil (no hay que preverlas todas).
                   Profesor: Marcelo Montecinos C.
                                                               90
Taller Programación III
                            Java
     Cómo programar Exception Handlers ?


   Forma general: en un bloque try-catch
try {
         lista de instrucciones que pueden generar un error
    }
catch (ExceptionTipo1 e) {
         lista de instrucciones para enmendar el error de Tipo1
      {
 catch (ExceptionTipo2 e) {
        lista de instrucciones para enmendar el error de Tipo1
      }
 catch (ExceptionTipo3 e) {
        lista de instrucciones para enmendar el error de Tipo1
      }
   Si no se conoce o no importa el tipo de exception específico se puede
   poner Exception y se atrapan todos (basta un solo bloque cach). Si
   hay más de un bloque se ejecuta sólo un bloque catch según el tipo
   de error.
                     Profesor: Marcelo Montecinos C.
                                                                  91
Taller Programación III
                                     Java
             Ejemplo de Exception I/O
     Muchas veces el compilador OBLIGA a programar el código de modo de atrapar
     exceptions cuando estas pueden suceder con cierta probabilidad. Las más
     frecuentes son las de IO.

    import java.io.*;       //importa clases de la biblioteca IO
    public class ProgrmaÍO{
        public static void main(String args[]) {
           BufferedReader in; PrintWriter out; String line;
           try { in = new BufferedReader(new FileReader(“Origen.txt”))};
           catch (IOException e) {
             System.out.println(“error en apertura”); System.exit(1);}
           try { out = new PrintWriter( new FileWriter(“Destino.txt”))};
           catch (IOException e) {
             System.out.println(“error en creacion”); System.exit(1);}
          try {
              while( (line = in.readLine()) != null)
                       out.println(line);
          catch (IOException e) { System.out.println(“problemas”);}
      }
}
                              Profesor: Marcelo Montecinos C.
                                                                           92
Taller Programación III
                                     Java

              Ejemplo de Exception I/O (2)

      Se puede omitir poner tantos try-catch si no importa donde
      sucedió

    import java.io.*;        //importa clases de la biblioteca IO
    public class ProgrmaÍO2{
        public static void main(String args[]) {
           BufferedReader in; PrintWriter out; String line;
           try {
                   in = new BufferedReader(
                                          new InputStreamReader(System.in));
                  out = new PrintWriter( new FileWriter(“Destino.txt”));
                  System.out.println(“ingrese linea”);
                  while( (line = in.readLine()) != “”){
                       out.println(line);
                        System.out.println(“ingrese linea”);
                 }
           catch (Exception e) { System.out.println(“problemas”);
           }
      }                            Profesor: Marcelo Montecinos C.
}                                                                              93
Taller Programación III
                              Java

        Ejemplo de Exception I/O (3)
 También se puede evitar tener que preocuparse de las exceptions siempre
 y cuando el método que la pordría generar se declare como que “lanza”
 una excepción:

import java.io.*;       //importa clases de la biblioteca IO
public class ProgrmaÍO3{
   public static void main(String args[]) throws IOException{
      BufferedReader in; PrintWriter out; String line;
       in = new BufferedReader(new FileReader(“Origen.txt”));
      out = new PrintWriter( new FileWriter(“Destino.txt”));
       while( (line = in.readLine()) != null)
                 out.println(line);
  }
}
 Esto implica que el programa se caerá si hay una excepción durante la
 generación del programa. En otros casos se puede declarar que uno o
 más métodos lanzan una IOException y el programa o método principal se
 preocupa de escribir el Exception handler.
                       Profesor: Marcelo Montecinos C.
                                                                  94
Taller Programación III
            Java




Estructuras de Decisión




     Profesor: Marcelo Montecinos C.
                                       95
Taller Programación III
                 Java
       Estructuras de Decisión


if (expresión lógica)
{
    <bloque de instrucciones >
}
else
{
    <bloque de instrucciones>
}


          Profesor: Marcelo Montecinos C.
                                            96
Taller Programación III
                    Java
               Estructuras de Decisión
Veamos un ejemplo:
       class CPrueba
       {
          public static void main(String arg[])
          {
               int a , b;
               a = 1; b = 3;
               if (a < b)
               {
                   System.out.println(a);
               }
               else
               {
                   System.out.println(b);
               }
          }
       }
             Profesor: Marcelo Montecinos C.
                                                  97
Taller Programación III
                      Java
             Estructuras de Decisión
Decisión Anidada

  if (expresión lógica)
  {
           if (expresión lógica)
           {
               <bloque de instrucciones >
           }
           else
           {
               <bloque de instrucciones >
           }
  }
  else
  {
      <bloque de instrucciones >
  }
               Profesor: Marcelo Montecinos C.
                                                 98
Taller Programación III
                  Java
Veamos un ejemplo de Decisión Anidada
       class CPrueba
       {
          public static void main(String arg[])
          {
                  int a , b, c;
                  a = 1; b = 3;
                  if (a < b)
                  {
                     if (b > c)
                     {
                              a++;
                     }
                     else
                     {
                              b++;
                     }
                  }
                  else
                  {
                     a = a + b;
                  }
          }
       }     Profesor: Marcelo Montecinos C.
                                                  99
Taller Programación III
                             Java
                        Estructuras de Decisión
Veamos otro ejemplo de Decisión Anidada

if (X > 10)
{
     if (X < 20)
     {
             System.out.println( X + ” esta entre 10 y 20”);
     }
     else
     {
             System.out.println( X + “es mayor a 20”);
      }
}
else
 {
     if (X > 0)
     {
             System.out.println( X + “entre 1 y 10”); }
     else
      {
             System.out.println( X + “igual o menor a cero”);
       }
}                    Profesor: Marcelo Montecinos C.
                                                                100
Taller Programación III
                       Java
                                        Estructuras de Decisión
 Ejercicio

Deseamos hacer un programa que dado el sueldo de
una persona, le aumente un 50% si la persona gana
menos de 180000 Bs ó un 20% si gana más.


                if (sueldo < 18000)
                {
                    sueldo *= 1.5;
                }
                else
                {
                    sueldo *= 1.2;
                }
                Profesor: Marcelo Montecinos C.
                                                             101
Taller Programación III
                             Java

                               Estructuras de Decisión
if – else - if


             Llamada también : alternativas múltiples.

             Realiza una verificación de las expresiones
             lógicas, y cuando consigue una que se cumple,
             ejecuta su bloque de instrucciones y no toma en
             cuenta el resto de las expresiones.

             Si no se cumple ninguna expresión, ejecuta el
             else.

             No necesariamente debe tener else.

                      Profesor: Marcelo Montecinos C.
                                                               102
Taller Programación III
                              Java

                                Estructuras de Decisión


if – else - if


         Haremos un programa que me permita evaluar
         una función, en base a un número d.

         Si d > 0      (-4 + Math.sqrt (d))/2

         Si d = 0      -4/2

         Si d < 0      (-4 + Math.sqrt (Math.abs (d)) )/2


                       Profesor: Marcelo Montecinos C.
                                                            103
Taller Programación III
                                   Java
                                          Estructuras de Decisión
class CEvaluar
{
         public static void main (String args[])
         {
                   int d;
                   double x;
                   System.out.println (quot;Introduzca el valor de d quot;);
                   d = CTeclado.ReadInt();
                   if (d > 0)
                   {
                              x = (-4 + Math.sqrt (d))/2;
                   }
                   else if (d == 0)
                   {
                              x = -4/2;
                   }
                   else
                   {
                              x = (-4 + Math.sqrt (Math.abs (d)) )/2;
                   }
                   System.out.println (quot;El valor de x es quot; + x);

         }
}
                            Profesor: Marcelo Montecinos C.
                                                                        104
Taller Programación III
                       Java
                         Estructuras de Decisión
swicht
         switch (expr1)
          {
            case valor1:
                instrucciones;
                break;
            case valor2:
                instrucciones;
                break;
            default:
                instrucciones;
                break;
           } Profesor: Marcelo Montecinos C.
                                                   105
Taller Programación III
                                    Java
                                           Estructuras de Decisión
 switch
                                               expr1 debe ser compatible con valores
switch (expr1)
                                            enteros o carácter.
 {                                             Cuando la expresión coincide con algún
    case valor1:                            literal de la sentencia case, se ejecutan las
         instrucciones;                     instrucciones correspondientes a ese case
                                               Si ninguna de las constantes coincide con
         break;
                                            la expresión, se ejecutal el default si existe.
   case valor2:                             Si no existe el default, no se ejecuta nada.
         instrucciones;                        La sentencia break se utiliza para
         break;                             terminar una secuencia de instrucciones,
                                            haciedo que la ejecución salte a la primera
default:
                                            línea de código que sigue a la sentencia
         instrucciones;                     swicht completa.
         break;                                La sentencia break es opcional, de
}                                           omitirse la ejecución continuará en el
                                            siguiente case.


                             Profesor: Marcelo Montecinos C.
                                                                                   106
Taller Programación III
                         Java
                                Estructuras de Decisión

Veamos un ejemplo con switch en Java

                     switch (numEst)
                     {
                     case 20:
                        numEst += 3;
                        break;
                     case 50:
                        numEst++;
                        break;
                     default:
                        numEst--;
                        break;
                     }
                  Profesor: Marcelo Montecinos C.
                                                      107
Taller Programación III
                      Java
                       Estructuras de Decisión


Veamos un ejemplo con switch



     Haremos un programa que reciba un
     mes (número) y nos indique la
     estación que hay en ese mes.




               Profesor: Marcelo Montecinos C.
                                                 108
Taller Programación III
    switch (mes)           Java
{
      case 12:
      case 1:
      case 2:
                 System.out.println (quot;Inviernoquot;);
                 break;
      case 3:
      case 4:
      case 5:
                 System.out.println (quot;Primaveraquot;);
                 break;
      case 6:
      case 7:
      case 8:
                 System.out.println (quot;Veranoquot;);
                 break;
      case 9:
      case 10:
      case 11:
                 System.out.println (quot;Otonoquot;);
                 break;
      default:
                 System.out.println (quot;Mes desconocidoquot;);
                      Profesor: Marcelo Montecinos C.
                                                           109
}
Taller Programación III
                                     Java
switch (mes)
{
         case 12:
         case 1:    System.out.println (“Estamos en quot;);
         case 2:                                                Si mes = 2
                    System.out.println (quot;Inviernoquot;);
                    break;                                      La salida es:
         case 3:                                                Invierno
         case 4:
         case 5:
                    System.out.println (quot;Primaveraquot;);
                    break;
         case 6:
         case 7:
         case 8:
                    System.out.println (quot;Veranoquot;);
                    break;                                      Si mes = 12
         case 9:
         case 10:                                               La salida es:
         case 11:                                               Estamos en
                    System.out.println (quot;Otonoquot;);
                    break;                                      Invierno
         default:
                    System.out.println (quot;Mes desconocidoquot;);
}
                              Profesor: Marcelo Montecinos C.
                                                                            110
Taller Programación III
                               Java
                      Ejercicios
1. Desarrolle un programa en Java que le permita leer el nombre , la
   edad , el sexo y el estado civil de cualquier persona e imprima el
   nombre de la persona si es un hombre casado y mayor de 40 años
   o una mujer soltera menor de 50 años.
2. Desarrolle un programa en Java para leer el nombre de un
   empleado, el salario básico por hora y el número de horas
   trabajadas durante una semana. Calcule el salario neto , teniendo
   en cuenta que si el número de horas trabajadas durante la semana
   es mayor de 48 horas, esas horas demás se consideran horas
   extras y tienen un recargo del 35%. Imprima el nombre del
   empleado y su salario neto.




                        Profesor: Marcelo Montecinos C.
                                                                  111
Taller Programación III
                                Java
                        Ejercicios
En la tienda “Sigo de pie” los empleados reciben una cierta comisión
dependiendo del código del artículo que vendan.

          Código del artículo            Cálculo de la comisión

                  1                     15% del precio de venta

                  2             40% de la diferencia del precio de venta
                                     y el precio mínimo de venta
                  3             10% del precio mínimo de venta más el
                                50% de la diferencia del precio de venta
                                     y el precio mínimo de venta
                  4             Bs. 100 por unidad más el 5% del precio
                                           mínimo de venta
                  5                       Bs. 500 por unidad


   Hacer un programa que imprima el Nombre del vendedor, el código
                         Profesor: Marcelo Montecinos C.
                                                                           112
   del artículo que vendió y la comisión que se ganó.
Taller Programación III
                           Java
                Resumen
En resumen, los conceptos vistos fueron :

                                           if   (expresión lógica)
                                                   { bloque de instrucciones }
                                                   else
                                                   { bloque de instrucciones }
                                           if – else - if
                                            switch (expr1)
                                       {
Instrucciones
                                           case valor1:   instrucciones;
                                                          break;
                                           case valor2:   instrucciones;
                                                          break;
                                           default:       instrucciones;
                                                          break;
                                           }
                    Profesor: Marcelo Montecinos C.
                                                                       113
Taller Programación III
             Java




Sentencias de Iteración




      Profesor: Marcelo Montecinos C.
                                        114
Taller Programación III
                  Java

Sentencias de Iteración


Las sentencias de iteración en Java son:
while, do-while y for.

Se utilizan para ejecutar varias veces un
conjunto de instrucciones.

Cada sentencia de repetición tiene una
utilidad adecuada dependiendo de la
situación.


           Profesor: Marcelo Montecinos C.
                                             115
Taller Programación III
while                  Java
Sentencias de Iteración

                              while (expresión lógica)
                              {
                                 bloque de
                                 instrucciones;
                               }

Ejemplo: Mostrar los números del 0 al 9
 int i =0;
 while (i < 10)
 {
        System.out.println(“el valor de i es : “ + i);
        i++;
 }              Profesor: Marcelo Montecinos C.
                                                         116
Taller Programación III
while                Java
Sentencias de Iteración

Evalúa su expresión condicional al inicio del
bucle.

Repite un bloque de instrucciones, mientras
su expresión sea verdadera.

Cuando la expresión es falsa, el control
pasa a la siguiente línea de código que hay
inmediatamente después del bucle.

Puede suceder que el bloque de intrucciones
nunca se ejecute.
              Profesor: Marcelo Montecinos C.
                                                117
Taller Programación III
                            Java
class CalFactura
 {
   public static void main(String args[ ])
 {
    char resp;
    double monto,isv;
    System.out.println(quot;Indique si desea calcular factura s/nquot;);
    resp=CTeclado.ReadChar( );
    while ((resp =='s') || (resp =='S'))
         {
            System.out.println(quot;Indique el monto de la facturaquot;);
            monto=CTeclado.ReadDouble();
            isv=(monto*14.5/100);
            System.out.println(quot;El monto a pagar de ISV es :quot;+isv);
            System.out.println(quot;Desea calcular para otra facturaquot;);
            resp=CTeclado.ReadChar();
         }
    }
}
                     Profesor: Marcelo Montecinos C.
                                                                      118
Taller Programación III
      do-while             Java
      Sentencias de Iteración

    do
    {
       bloque de instrucciones;
     }
    while (expresion lógica);

     Ejemplo:
                               x=0;
Mostrar los números
                               do
divisibles por 3               {
menores a 20                        x = x + 3;
                                    System.out.println(“x = “ + x);
                                }
                      Profesor: Marcelo Montecinos C.
                               while (x < 20);                        119
Taller Programación III
                   Java

do-while
Sentencias de Iteración

 Evalúa su expresión condicional al final del
 bucle.

 Repite un bloque de instrucciones, mientras
 su expresión sea verdadera.

 Cuando la expresión es falsa, el control
 pasa a la siguiente línea de código que hay
 inmediatamente después del bucle.

 El bloque de instrucciones de este ciclo se
 ejecuta al Profesor: Marcelouna vez.
            menos Montecinos C.                 120
Taller Programación III
                                  Java

class NotasEstudiantes
{
   public static void main(String args[ ])
  {
     char resp;
     int notaTeo,acumTeo;
     do
     {
            System.out.println(quot;Indique la Nota de Teoria quot;);
            notaTeo=CTeclado.ReadInt();
            acumTeo=(NotaTeo*50/100);
            System.out.println(quot;El acumulado teoria es :quot;+acumTeo);
            System.out.println(quot;Desea calcular acumulado para otro estudiante quot;);
            resp=CTeclado.ReadChar();
       }
      while ((resp == 's') || (resp =='S'));
    }
}
                           Profesor: Marcelo Montecinos C.
                                                                            121
Taller Programación III
   for                   Java
  Sentencias de Iteración


for (expr. inicial; expr. Lógica;modificacion)
{
   bloque de instrucciones;
}



Ejemplo: Mostrar los números del 1 al 10


       for (int i = 1; i < 10; i++)
        {
               System.out.println(“i = “ + i);
         }
                  Profesor: Marcelo Montecinos C.
                                                    122
Taller Programación III
                      Java
 for
Sentencias de Iteración
Se utiliza para ejecutar un bloque de instrucciones un
número determinado (fijo) de veces.

Repite un bloque de instrucciones, mientras su expresión
sea verdadera.

La primera vez que se va a ejecutar el ciclo, se realiza la
inicialización, es decir, se declara y asigna un valor
inicial a la variable que va a controlar el ciclo. Esto
sucede una sola vez.

Cuando la expresión es verdadera, se ejecuta la
modificación de la variable que controla el ciclo. Esto es
automático.
               Profesor: Marcelo Montecinos C.
                                                         123
Taller Programación III
                            Java

class Serie
{
      public static void main(String args[ ])
   {
      int valoralor,termino,sumSerie;
      System.out.println(quot;Indique el valor a calcular la serie :quot;);
      valor=CTeclado.ReadInt( );
      System.out.println(quot;Indique la cantidad de términos :quot;);
      termino=CTeclado.ReadInt( );
      sumSerie=0;
          for (int contador = 1 ; contador <= termino; contador++)
          {
                    sumSerie = sumSerie + contador*valor; }
                    System.out.println(quot;El resultado de la serie es :quot;);
                    System.out.println(sumSerie);

          }
    }
}                    Profesor: Marcelo Montecinos C.
                                                                           124
Taller Programación III
                            Java
      Sentencias de Iteración
 En resumen, los conceptos vistos fueron :

                                           while (expresión lógica)
                                     {
                                                  bloque de instrucciones;
                                     }

                                          do
                                     {
Instrucciones                                     bloque de instrucciones;
                                     }
                                     while (expresion lógica);

                                          for (expr. inicial; expr. Lógica; paso)
                                      {
                                                  bloque de instrucciones;
                     Profesor: Marcelo Montecinos C.
                                      }                                             125
Taller Programación III
                           Java

    Ejercicios
1. Se desea saber el promedio de notas que tiene un
   estudiante. Hasta la fecha ha cursado 6 materias;
   además se quiere el número de materias reprobadas y el
   número de materias aprobadas.




Escribir el programa en Java dado el Algoritmo

Entrada.                     Salida:

nota: numérico               promn, numa, numr: numérico




                    Profesor: Marcelo Montecinos C.
                                                            126
Taller Programación III
              Java

1. Inicio Promedio.
2. numa, numr, prom, acumNotas,nota: numérico
3. numa        0
4.     numr     0
5.    acumNotas      0
6.    Para cont=1 hasta 6 hacer (+1)
Comenzar
      6.1 Leer nota
      6.2 acumNotas       acumNotas+nota
      6.3 Si (nota < 10) entonces
      6.3.1 numr     numr + 1
      Sino
      6.3.2 numa     numa + 1
Fin Para
7.    prom     acumNotas/6
8.    Mostrar (“ El promedio del estudiantes es : “prom)
9.    Mostrar (“El estudiante tiene “, numa , “materias aprobadas”)
10. Mostrar (“El estudiante tiene “ ,numr, “materias reprobadas”)
11. Terminar Promedio




       Profesor: Marcelo Montecinos C.
                                                                      127
Taller Programación III
                        Java




2. Se requiere que se obtenga la misma
información pero, para todos los estudiantes
de una escuela.

Entrada.                  Salida:
nota: numérico            promn, numa, numr:
                          numérico




                 Profesor: Marcelo Montecinos C.
                                                   128
1.    Inicio Escuela. Programación III
                 Taller
2.    promedioMax, numa, numr, prom,acumNotas,nota,carnet: numérico
3.    Leer carnet            Java
4.    promedioMax        0
5.    Mientras ( carnet != 0 ) hacer
Comenzar
3.1 numa       0
3.2 numr       0
3.3 acumNotas        0
3.4 Para cont=1 hasta 6 hacer +1
Comenzar
       3.4.1     Leer nota
       3.4.2     acumNotas     acumNotas + nota
       3.4.3 Si( nota < 10) entonces
       3.4.3.1 numr        numr + 1
               sino
       3.4.3.2     numa     numa + 1
        Fin para
3.5 prom      acumNotas/6
3.6 Si (prom > promedioMax) entoces
3.6.1     promedioMax       prom
3.7 Mostrar (“ El promedio del estudiantes es : “prom)
3.8 Mostrar (“El estudiante tiene “, numa ,“materias aprobadas”)
3.9 Mostrar (“El estudiante tiene “, numr, “materias reprobadas”)
3.10       Leer carnet
Fin Mientras
6. Mostrar promedioMax
7. Terminar Escuela
                Profesor: Marcelo Montecinos C.
                                                                      129
Strings en Java

     Cadena de caracteres




        Profesor: Marcelo Montecinos C.   130
Taller Programación III
              Java
                                         Strings
En Java un String no es un tipo de
dato primitivo como char o int.

Es una clase que maneja cadena
de caracteres.



       Profesor: Marcelo Montecinos C.
                                                   131
Taller Programación III
                       Java

Se declara la variable de tipo de dato cadena.
                                                        Strings
                  String nombre,cadena;
Se crea una instancia de cadena, con el constructor por defecto.
                  nombre = new String();


            nombre = new String(quot;carameloquot;);
Para asignarle una secuencia de caracteres.
        nombre= quot; Maria Perezquot;;


Para hacer referencia a la misma instancia del String
        cadena = nombre;
   A partir de este momento cadena y nombre hacen referencia a la misma
   instancia. (No se copia el valor , solo la referencia)



                Profesor: Marcelo Montecinos C.
                                                                    132
Taller Programación III
                   Java

                                               Strings
Para obtener la longitud de la candena
     nombre.length()

Si deseamos concatenar cadenas
    nombre = quot;Juanquot;+quot; Garcia”;

Se puede utilizar el metodo concat para concatenar dos
  cadenas,

    nombre = quot; Carlos“;
   cadena=nombre.concat(quot; Juan quot;);

el contenido de cadena, al final sería: quot;CarlosJuan quot;


            Profesor: Marcelo Montecinos C.
                                                         133
Taller Programación III
                        Java
                                                         String
Para obtener el caracter que se encuentra en una posición
            charAt(posición);
ejemplo,
     cadena.charAt(0) devolveria el caracter “C”
donde posición se inicia en cero.

Para extraer una subcadena, hay dos formas

substring(int posiciónInicial); copia desde la posición inicial
                                           hasta el final de la cadena
substring(int posiciónInicial, int posicionFinal);
                   copia desde la posición inicial
                   hasta la posición final-1

                 Profesor: Marcelo Montecinos C.
                                                                         134
Taller Programación III
               Java

                                          String
Un ejemplo de substring,

       nombre=“Maria Rosa”;
       System.out.println(nombre.substring(2));
       System.out.println(nombre.substring(2,4));

  la salida sería,
        ria Rosa
        ri




        Profesor: Marcelo Montecinos C.
                                                    135
Taller Programación III
                 Java

                                            String
Para sustituir una letra por otra dentro de la cadena

   replace(char original,char sustituto)

   ejemplo,
   cadena=“casa mia”;
   System.out.println(cadena.replace('a','e'));
   la salida sería,
           cese mie

          Profesor: Marcelo Montecinos C.
                                                     136
Taller Programación III
                 Java

                                            String
Para convertir los caracteres de una cadena de
mayúsculas a minúsculas

    toLowerCase()

    ejemplo,
           cadena=“CASA MIA”;
           System.out.println(cadena.toLowerCase());
    la salida sería,
           casa mia


          Profesor: Marcelo Montecinos C.
                                                       137
Taller Programación III
                   Java

                                              String
Para convertir los caracteres de una cadena de minúsculas a
mayúsculas

    toUpperCase()

     ejemplo,
             cadena=“casa mia”;
             System.out.println(cadena.toUpperCase());
    la salida sería,
                     CASA MIA


            Profesor: Marcelo Montecinos C.
                                                         138
Taller Programación III
                         Java


                                                    String
Para comparar los caracteres dentro de dos cadenas
    equals()

    ejemplo,
               if (s1.equals(s2))
               {
                         System.out.println(quot;Son iguales los caracteresquot;);
               }
               else
               {
                         System.out.println(quot;no son iguales los caracteresquot;);
               }


                  Profesor: Marcelo Montecinos C.
                                                                      139
Taller Programación III
                        Java

                                                   String
 Para comparar los caracteres dentro de dos instancias, sin diferenciar
entre mayúsculas y minúsculas
      equalsIgnoreCase()

ejemplo,
      if (s1.equalsIgnoreCase(s2))
              {
                      System.out.println(quot;Son iguales los caracteresquot;);
              }
              else
              {
                      System.out.println(quot;no son iguales los caracteresquot;);
              }
                 Profesor: Marcelo Montecinos C.
                                                                    140
Taller Programación III
                   Java


                                            String
 Para comparar si dos objetos hacen referencia a la misma
instancia
                    ==

ejemplo,
    if (s1==s2)
    {
             System.out.println(“Son el mismo objeto“);
    }
    else
    {
             System.out.println(“No son el mismo objeto”);
    }         Profesor: Marcelo Montecinos C.
                                                             141
Taller Programación III
                     Java

                                                   String
Para saber si una cadena es menor, igual o mayor
lexicográficamente que otra.
                     compareTo()

ejemplo,
    if (s1.compareTo(s2) < 0)
             {System.out.println(“s1 es menor a s2quot;);}
    else
             { if (s1.compareTo(s2) == 0)
                         { System.out.println(“s1 es igual a s2quot;); }
             else
                         {System.out.println(“s1 es mayor s2quot;);}
             } Profesor: Marcelo Montecinos C.                   142
Taller Programación III
                     Java

                                                  String
Para determinar si la cadena comienza con una cadena
especificada.
                      startsWith()

ejemplo,
            if (s1.startsWith(quot;carquot;))
                      {
                      System.out.println(quot;SIquot;);
                      }
            else
                      {
                      System.out.println(quot;NOquot;);
                     }
              Profesor: Marcelo Montecinos C.
                                                           143
Taller Programación III
                     Java

                                               String
Para determinar si una cadena se encuentra, a partir de una
posición, dentro de una cadena especificada,
             startsWith(String cadena,int posición)

    ejemplo,
           if (s1.startsWith(quot;carquot;,3))
                       {
                       System.out.println(quot;SIquot;);
                       }
           else
                       {
                       System.out.println(quot;NOquot;);
               Profesor: Marcelo Montecinos C.
                       }                                      144
Taller Programación III
                     Java


                                                String
Para determinar si la cadena termina con una cadena dada.
            endsWith()
     ejemplo,

    if (s2.endsWith(quot;SAquot;))
             {
             System.out.println(quot;SIquot;);
             }
    else
             {
             System.out.println(quot;NOquot;);
             }
              Profesor: Marcelo Montecinos C.
                                                            145
Taller Programación III
                       Java

 Paquetes
Paquetes Java más importantes:
      -   lang – para funciones del lenguaje;
      -   util – para utilidades adicionales;
      -   io – para entrada y salida;
      -   text – para formateo especializado;
      -   awt – para gráficos e interfaz gráfica de usuario
Para acceder a cualquiera de estos paquetes, excepto
  lang que está siempre disponible, usamos el
  siguiente modelo:

      import java.nombrepaquete.*;
                Profesor: Marcelo Montecinos C.
                                                          146
JDBC


                    Java Database
                     Connectivity


       Profesor: Marcelo Montecinos C.   147
Taller Programación III
                 Java
       Introducción


JDBC es una API, formada por conjunto de
clases e interfaces en el lenguaje de
programación Java, para ejecutar sentencias
SQL.
Ofrece un estándar de conexión a cualquier
base de datos disponible en el mercado.
Permite obtener los datos en forma fácil y
cómoda en ambientes cliente-servidor a
través de Internet/Intranet.
          Profesor: Marcelo Montecinos C.
                                            148
Taller Programación III
                Java
      ¿Qué hace JDBC?


Establece una conexión a una base de
datos.
Envía sentencias SQL.
Procesa los resultados de estas
sentencias.



         Profesor: Marcelo Montecinos C.
                                           149
Taller Programación III
                       Java
Arquitectura JDBC
    Arquitectura normal                  Puente JDBC-ODBC
                                                    Aplicaciones Java
     Aplicaciones Java
                                                         JDBC API
           JDBC API
                                              Adm. de controladores JDBC
  Adm. de controladores
           JDBC                                    Puente JDBC/ODBC
  Controlador          Controlador
     JDBC                 JDBC                Adm. de controladoresODBC

                                                  C. ODBC      C. ODBC
      DB                      DB
                Profesor: Marcelo Montecinos C.     DB              DB
                                                                         150
Taller Programación III
                       Java
              Primer ejemplo básico
 Connection con = DriverManager.getConnection (
                  quot;jdbc:odbc:nombrequot;, quot;loginquot;,
                  quot;passwordquot;);
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery(quot;SELECT a, b, c
  FROM Table1quot;);
while (rs.next()) {
  int x = rs.getInt(quot;aquot;);
  String s = rs.getString(quot;bquot;);
  float f = rs.getFloat(quot;cquot;);
}
                   JDBC usa una URL para especificar la base de
                   datos.
                Profesor: Marcelo Montecinos C.
                                                            151
Taller Programación III
                   Java
...Primer ejemplo básico


Ejemplos de URL:
   jdbc:mysql://myserver:4444/db1
   jdbc:oracle://oraserver
   jdbc:odbc:mydatabase




            Profesor: Marcelo Montecinos C.
                                              152
Taller Programación III
                 Java

JDBC vs. ODBC


Se puede usar ODBC desde Java, pero el
puente JDBC-ODBC ayuda bastante.
ODBC tiene una interfaz tipo C rompiendo el
esquema de seguridad, robustez e
implementación de Java.
ODBC mezcla funciones simple y complejas.
Los controladores de ODBC deben ser
instalados en cada cliente.

          Profesor: Marcelo Montecinos C.
                                            153
Taller Programación III
                     Java
...JDBC vs. ODBC


   JDBC es una interfaz natural en Java.




              Profesor: Marcelo Montecinos C.
                                                154
Taller Programación III
                               Java
         Modelos de acceso a BD


Aplicación                De 2 capas
  Java
              Cliente        La aplicación “habla” directamente
                             con la base de datos.
  JDBC
                             Controlador JDBC se comunica con
      Protocolo
                             el sistema específico que maneja la
                             base de datos.
      BD

             Servidor        La base de datos puede estar en
  DBMS       BD              otra máquina, con lo que el cliente
                             se comunica por red. Esta es la
                             configuración llamada
                             cliente/servidor.

                        Profesor: Marcelo Montecinos C.
                                                             155
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap
Curso Java Inacap

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

Spring Boot
Spring BootSpring Boot
Spring Boot
 
Tutorial de eclipse completo programacion
Tutorial de eclipse completo programacionTutorial de eclipse completo programacion
Tutorial de eclipse completo programacion
 
Alice3
Alice3Alice3
Alice3
 
introducción a flutter
introducción a flutterintroducción a flutter
introducción a flutter
 
ORACLE
ORACLEORACLE
ORACLE
 
ANDROID INFORMACION
ANDROID INFORMACIONANDROID INFORMACION
ANDROID INFORMACION
 
Introducción a las Pruebas Software
Introducción a las Pruebas SoftwareIntroducción a las Pruebas Software
Introducción a las Pruebas Software
 
Springboot introduction
Springboot introductionSpringboot introduction
Springboot introduction
 
Introduction to java (revised)
Introduction to java (revised)Introduction to java (revised)
Introduction to java (revised)
 
Android studio
Android studioAndroid studio
Android studio
 
Flutter
FlutterFlutter
Flutter
 
Manual (1) de wireshark
Manual (1) de wiresharkManual (1) de wireshark
Manual (1) de wireshark
 
Selenium introduction
Selenium introductionSelenium introduction
Selenium introduction
 
Greenfoot 1
Greenfoot 1Greenfoot 1
Greenfoot 1
 
Logging best practice in mule using logger component
Logging best practice in mule using logger componentLogging best practice in mule using logger component
Logging best practice in mule using logger component
 
JVM++: The Graal VM
JVM++: The Graal VMJVM++: The Graal VM
JVM++: The Graal VM
 
Oracle database 12c sql worshop 2 student guide vol 2
Oracle database 12c sql worshop 2 student guide vol 2Oracle database 12c sql worshop 2 student guide vol 2
Oracle database 12c sql worshop 2 student guide vol 2
 
Java Introduction
Java IntroductionJava Introduction
Java Introduction
 
sistemas operativos moviles
sistemas operativos movilessistemas operativos moviles
sistemas operativos moviles
 
Maven
MavenMaven
Maven
 

Destacado

CABLEADO ESTRUCTURADO Y REDES
CABLEADO ESTRUCTURADO Y REDESCABLEADO ESTRUCTURADO Y REDES
CABLEADO ESTRUCTURADO Y REDESPaco Pineda
 
The Art of AngularJS in 2015
The Art of AngularJS in 2015The Art of AngularJS in 2015
The Art of AngularJS in 2015Matt Raible
 
congenital anomalies of renal system
congenital anomalies of renal systemcongenital anomalies of renal system
congenital anomalies of renal systemRia Saira
 
Cell block and liquid based cytology
Cell block and liquid based cytologyCell block and liquid based cytology
Cell block and liquid based cytologyDr Neha Mahajan
 
GMAT Math Flashcards
GMAT Math FlashcardsGMAT Math Flashcards
GMAT Math FlashcardsGMAT Prep Now
 
Identidades Trigonometricas
Identidades TrigonometricasIdentidades Trigonometricas
Identidades Trigonometricasjuliovicente79
 
Semiologia. (signos vitales).
Semiologia. (signos vitales).Semiologia. (signos vitales).
Semiologia. (signos vitales).skayice
 
Ferramentas de Gerência de Projetos
Ferramentas de Gerência de ProjetosFerramentas de Gerência de Projetos
Ferramentas de Gerência de ProjetosCloves Moreira Junior
 
FunçãO Do 1º E 2º Grau Autor Antonio Carlos Carneiro Barroso
FunçãO Do 1º  E 2º Grau Autor Antonio Carlos Carneiro BarrosoFunçãO Do 1º  E 2º Grau Autor Antonio Carlos Carneiro Barroso
FunçãO Do 1º E 2º Grau Autor Antonio Carlos Carneiro BarrosoAntonio Carneiro
 
Timeline e historia do design
Timeline e historia do designTimeline e historia do design
Timeline e historia do designMarcio Duarte
 
AULA DE TRIGONOMETRIA
AULA DE TRIGONOMETRIAAULA DE TRIGONOMETRIA
AULA DE TRIGONOMETRIACECIERJ
 
Técnicas para o Desenvolvimento de Cronogramas
Técnicas para o Desenvolvimento de CronogramasTécnicas para o Desenvolvimento de Cronogramas
Técnicas para o Desenvolvimento de CronogramasPeter Mello
 
Cirugia preprotesica
Cirugia preprotesicaCirugia preprotesica
Cirugia preprotesicailivamo
 
VegetaçãO Brasileira - Ensino Fundamental 4º e 5º ano
VegetaçãO Brasileira - Ensino Fundamental 4º e 5º anoVegetaçãO Brasileira - Ensino Fundamental 4º e 5º ano
VegetaçãO Brasileira - Ensino Fundamental 4º e 5º anoCoraci Machado Araújo
 
Apresentação Storytelling 101
Apresentação Storytelling 101Apresentação Storytelling 101
Apresentação Storytelling 101Enrico Cardoso
 

Destacado (20)

CABLEADO ESTRUCTURADO Y REDES
CABLEADO ESTRUCTURADO Y REDESCABLEADO ESTRUCTURADO Y REDES
CABLEADO ESTRUCTURADO Y REDES
 
The Art of AngularJS in 2015
The Art of AngularJS in 2015The Art of AngularJS in 2015
The Art of AngularJS in 2015
 
congenital anomalies of renal system
congenital anomalies of renal systemcongenital anomalies of renal system
congenital anomalies of renal system
 
Cell block and liquid based cytology
Cell block and liquid based cytologyCell block and liquid based cytology
Cell block and liquid based cytology
 
100 esl-games
100 esl-games100 esl-games
100 esl-games
 
GMAT Math Flashcards
GMAT Math FlashcardsGMAT Math Flashcards
GMAT Math Flashcards
 
Apache Spark Architecture
Apache Spark ArchitectureApache Spark Architecture
Apache Spark Architecture
 
Identidades Trigonometricas
Identidades TrigonometricasIdentidades Trigonometricas
Identidades Trigonometricas
 
Semiologia. (signos vitales).
Semiologia. (signos vitales).Semiologia. (signos vitales).
Semiologia. (signos vitales).
 
Ser Criança
Ser CriançaSer Criança
Ser Criança
 
VisãO Geral da Filosofia
VisãO Geral da FilosofiaVisãO Geral da Filosofia
VisãO Geral da Filosofia
 
Ferramentas de Gerência de Projetos
Ferramentas de Gerência de ProjetosFerramentas de Gerência de Projetos
Ferramentas de Gerência de Projetos
 
FunçãO Do 1º E 2º Grau Autor Antonio Carlos Carneiro Barroso
FunçãO Do 1º  E 2º Grau Autor Antonio Carlos Carneiro BarrosoFunçãO Do 1º  E 2º Grau Autor Antonio Carlos Carneiro Barroso
FunçãO Do 1º E 2º Grau Autor Antonio Carlos Carneiro Barroso
 
Timeline e historia do design
Timeline e historia do designTimeline e historia do design
Timeline e historia do design
 
AULA DE TRIGONOMETRIA
AULA DE TRIGONOMETRIAAULA DE TRIGONOMETRIA
AULA DE TRIGONOMETRIA
 
Técnicas para o Desenvolvimento de Cronogramas
Técnicas para o Desenvolvimento de CronogramasTécnicas para o Desenvolvimento de Cronogramas
Técnicas para o Desenvolvimento de Cronogramas
 
Cirugia preprotesica
Cirugia preprotesicaCirugia preprotesica
Cirugia preprotesica
 
VegetaçãO Brasileira - Ensino Fundamental 4º e 5º ano
VegetaçãO Brasileira - Ensino Fundamental 4º e 5º anoVegetaçãO Brasileira - Ensino Fundamental 4º e 5º ano
VegetaçãO Brasileira - Ensino Fundamental 4º e 5º ano
 
Caderno plan. 1º ano
Caderno plan. 1º anoCaderno plan. 1º ano
Caderno plan. 1º ano
 
Apresentação Storytelling 101
Apresentação Storytelling 101Apresentação Storytelling 101
Apresentação Storytelling 101
 

Similar a Curso Java Inacap

Fundamentos u3 v1
Fundamentos u3 v1Fundamentos u3 v1
Fundamentos u3 v1Lubas Pc
 
Lenguaje de Programación Java
Lenguaje de Programación JavaLenguaje de Programación Java
Lenguaje de Programación JavaDuvan Zuluaga
 
Manual.curso.de.java.desde.cero
Manual.curso.de.java.desde.ceroManual.curso.de.java.desde.cero
Manual.curso.de.java.desde.ceroLalo Pérez
 
Introducción a la algoritmia
Introducción a la algoritmiaIntroducción a la algoritmia
Introducción a la algoritmiapierre R.
 
Java desde 0 pre
Java desde 0 preJava desde 0 pre
Java desde 0 prejtk1
 
Java desde 0 pre
Java desde 0 preJava desde 0 pre
Java desde 0 prejtk1
 
Programación en Java (I)
Programación en Java (I) Programación en Java (I)
Programación en Java (I) Cristian
 
2 daoo introduccion_java
2 daoo introduccion_java2 daoo introduccion_java
2 daoo introduccion_javaJohnny Rosero
 
Clase n°1 java
Clase n°1 javaClase n°1 java
Clase n°1 javajbersosa
 
Java desde 0
Java desde 0Java desde 0
Java desde 0Saviotec
 
Instalación de NetBeans
Instalación de NetBeansInstalación de NetBeans
Instalación de NetBeansPedro Mesía
 
[ES] Introdución a la plataforma java
[ES] Introdución a la plataforma java [ES] Introdución a la plataforma java
[ES] Introdución a la plataforma java Eudris Cabrera
 

Similar a Curso Java Inacap (20)

01 fundamentos-java
01 fundamentos-java01 fundamentos-java
01 fundamentos-java
 
Fundamentos u3 v1
Fundamentos u3 v1Fundamentos u3 v1
Fundamentos u3 v1
 
Semana9 Vbr
Semana9 VbrSemana9 Vbr
Semana9 Vbr
 
Lenguaje de Programación Java
Lenguaje de Programación JavaLenguaje de Programación Java
Lenguaje de Programación Java
 
Guia4 java
Guia4 javaGuia4 java
Guia4 java
 
Ap01 java
Ap01 javaAp01 java
Ap01 java
 
Manual.curso.de.java.desde.cero
Manual.curso.de.java.desde.ceroManual.curso.de.java.desde.cero
Manual.curso.de.java.desde.cero
 
Introducción a la algoritmia
Introducción a la algoritmiaIntroducción a la algoritmia
Introducción a la algoritmia
 
Java
JavaJava
Java
 
Java desde 0 pre
Java desde 0 preJava desde 0 pre
Java desde 0 pre
 
Java desde 0 pre
Java desde 0 preJava desde 0 pre
Java desde 0 pre
 
Programación en Java (I)
Programación en Java (I) Programación en Java (I)
Programación en Java (I)
 
2 daoo introduccion_java
2 daoo introduccion_java2 daoo introduccion_java
2 daoo introduccion_java
 
Clase n°1 java
Clase n°1 javaClase n°1 java
Clase n°1 java
 
Java desde 0
Java desde 0Java desde 0
Java desde 0
 
Instalación de NetBeans
Instalación de NetBeansInstalación de NetBeans
Instalación de NetBeans
 
[ES] Introdución a la plataforma java
[ES] Introdución a la plataforma java [ES] Introdución a la plataforma java
[ES] Introdución a la plataforma java
 
Introducción a la algoritmia
Introducción a la algoritmiaIntroducción a la algoritmia
Introducción a la algoritmia
 
Introducción a la algoritmia
Introducción a la algoritmiaIntroducción a la algoritmia
Introducción a la algoritmia
 
¿QUE ES JAVA?
¿QUE ES JAVA?¿QUE ES JAVA?
¿QUE ES JAVA?
 

Más de Francisco Godoy

Unidad I Introduccion Finanzas
Unidad I Introduccion FinanzasUnidad I Introduccion Finanzas
Unidad I Introduccion FinanzasFrancisco Godoy
 
Unidad I Valor De Las Personas En La OrganizacióN
Unidad I   Valor De Las Personas En La OrganizacióNUnidad I   Valor De Las Personas En La OrganizacióN
Unidad I Valor De Las Personas En La OrganizacióNFrancisco Godoy
 
Unidad 6 Evaluacion De Resultados
Unidad 6  Evaluacion De ResultadosUnidad 6  Evaluacion De Resultados
Unidad 6 Evaluacion De ResultadosFrancisco Godoy
 
Unidad 5 Implementacion De La Estrategia
Unidad 5  Implementacion De La EstrategiaUnidad 5  Implementacion De La Estrategia
Unidad 5 Implementacion De La EstrategiaFrancisco Godoy
 
Unidad 2 Mision Y Vision
Unidad 2   Mision Y VisionUnidad 2   Mision Y Vision
Unidad 2 Mision Y VisionFrancisco Godoy
 
Unidad 3 Determinar Objetivos
Unidad 3  Determinar ObjetivosUnidad 3  Determinar Objetivos
Unidad 3 Determinar ObjetivosFrancisco Godoy
 
Reclutamiento De Personal
Reclutamiento De PersonalReclutamiento De Personal
Reclutamiento De PersonalFrancisco Godoy
 
Presen Clases Bdd Unidad 4
Presen Clases Bdd Unidad 4Presen Clases Bdd Unidad 4
Presen Clases Bdd Unidad 4Francisco Godoy
 
Presen Clases Bdd Unidad 2
Presen Clases Bdd Unidad 2Presen Clases Bdd Unidad 2
Presen Clases Bdd Unidad 2Francisco Godoy
 
Presen Clases Bdd Unidad 3
Presen Clases Bdd Unidad 3Presen Clases Bdd Unidad 3
Presen Clases Bdd Unidad 3Francisco Godoy
 
Presen Clases Bdd Unidad 1
Presen Clases Bdd Unidad 1Presen Clases Bdd Unidad 1
Presen Clases Bdd Unidad 1Francisco Godoy
 
SeleccióN%20del%20personal
SeleccióN%20del%20personalSeleccióN%20del%20personal
SeleccióN%20del%20personalFrancisco Godoy
 

Más de Francisco Godoy (20)

Unidad I Introduccion Finanzas
Unidad I Introduccion FinanzasUnidad I Introduccion Finanzas
Unidad I Introduccion Finanzas
 
Unidad I Amortizaci N
Unidad I Amortizaci NUnidad I Amortizaci N
Unidad I Amortizaci N
 
Unidad I Valor De Las Personas En La OrganizacióN
Unidad I   Valor De Las Personas En La OrganizacióNUnidad I   Valor De Las Personas En La OrganizacióN
Unidad I Valor De Las Personas En La OrganizacióN
 
Unidad 6 Evaluacion De Resultados
Unidad 6  Evaluacion De ResultadosUnidad 6  Evaluacion De Resultados
Unidad 6 Evaluacion De Resultados
 
Unidad 5 Implementacion De La Estrategia
Unidad 5  Implementacion De La EstrategiaUnidad 5  Implementacion De La Estrategia
Unidad 5 Implementacion De La Estrategia
 
Unidad 4 Estrategia
Unidad 4  EstrategiaUnidad 4  Estrategia
Unidad 4 Estrategia
 
Unidad 2 Mision Y Vision
Unidad 2   Mision Y VisionUnidad 2   Mision Y Vision
Unidad 2 Mision Y Vision
 
Unidad 3 Determinar Objetivos
Unidad 3  Determinar ObjetivosUnidad 3  Determinar Objetivos
Unidad 3 Determinar Objetivos
 
Reclutamiento De Personal
Reclutamiento De PersonalReclutamiento De Personal
Reclutamiento De Personal
 
Presen Clases Bdd Unidad 4
Presen Clases Bdd Unidad 4Presen Clases Bdd Unidad 4
Presen Clases Bdd Unidad 4
 
Presen Clases Bdd Unidad 2
Presen Clases Bdd Unidad 2Presen Clases Bdd Unidad 2
Presen Clases Bdd Unidad 2
 
Presen Clases Bdd Unidad 3
Presen Clases Bdd Unidad 3Presen Clases Bdd Unidad 3
Presen Clases Bdd Unidad 3
 
Presen Clases Bdd Unidad 1
Presen Clases Bdd Unidad 1Presen Clases Bdd Unidad 1
Presen Clases Bdd Unidad 1
 
Mercado De Capitales
Mercado De CapitalesMercado De Capitales
Mercado De Capitales
 
El Sistema Financiero
El Sistema FinancieroEl Sistema Financiero
El Sistema Financiero
 
Caso De Uso Sia Ii
Caso De Uso Sia IiCaso De Uso Sia Ii
Caso De Uso Sia Ii
 
Anualidades Anticipadas
Anualidades AnticipadasAnualidades Anticipadas
Anualidades Anticipadas
 
Anualidades
AnualidadesAnualidades
Anualidades
 
SeleccióN%20del%20personal
SeleccióN%20del%20personalSeleccióN%20del%20personal
SeleccióN%20del%20personal
 
Uml Apoyo
Uml ApoyoUml Apoyo
Uml Apoyo
 

Último

Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...
Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...
Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...Marketing BRANDING
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfjeondanny1997
 
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptxHugoGutierrez99
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptchaverriemily794
 
Actividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolarActividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolar24roberto21
 
Trabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power PointTrabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power PointValerioIvanDePazLoja
 
Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1ivanapaterninar
 
David_Gallegos - tarea de la sesión 11.pptx
David_Gallegos - tarea de la sesión 11.pptxDavid_Gallegos - tarea de la sesión 11.pptx
David_Gallegos - tarea de la sesión 11.pptxDAVIDROBERTOGALLEGOS
 
La tecnología y su impacto en la sociedad
La tecnología y su impacto en la sociedadLa tecnología y su impacto en la sociedad
La tecnología y su impacto en la sociedadEduardoSantiagoSegov
 
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdfBetianaJuarez1
 
Análisis de Artefactos Tecnologicos (3) (1).pdf
Análisis de Artefactos Tecnologicos  (3) (1).pdfAnálisis de Artefactos Tecnologicos  (3) (1).pdf
Análisis de Artefactos Tecnologicos (3) (1).pdfsharitcalderon04
 
Viguetas Pretensadas en concreto armado
Viguetas Pretensadas  en concreto armadoViguetas Pretensadas  en concreto armado
Viguetas Pretensadas en concreto armadob7fwtwtfxf
 
certificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdfcertificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdfFernandoOblitasVivan
 
LINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptx
LINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptxLINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptx
LINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptxkimontey
 
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúRed Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúCEFERINO DELGADO FLORES
 
Herramientas que posibilitan la información y la investigación.pdf
Herramientas que posibilitan la información y la investigación.pdfHerramientas que posibilitan la información y la investigación.pdf
Herramientas que posibilitan la información y la investigación.pdfKarinaCambero3
 
La electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdfLa electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdfcristianrb0324
 
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024u20211198540
 
Slideshare y Scribd - Noli Cubillan Gerencia
Slideshare y Scribd - Noli Cubillan GerenciaSlideshare y Scribd - Noli Cubillan Gerencia
Slideshare y Scribd - Noli Cubillan Gerenciacubillannoly
 

Último (20)

Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...
Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...
Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
 
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
 
Actividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolarActividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolar
 
Trabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power PointTrabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power Point
 
Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1
 
David_Gallegos - tarea de la sesión 11.pptx
David_Gallegos - tarea de la sesión 11.pptxDavid_Gallegos - tarea de la sesión 11.pptx
David_Gallegos - tarea de la sesión 11.pptx
 
La tecnología y su impacto en la sociedad
La tecnología y su impacto en la sociedadLa tecnología y su impacto en la sociedad
La tecnología y su impacto en la sociedad
 
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
 
Análisis de Artefactos Tecnologicos (3) (1).pdf
Análisis de Artefactos Tecnologicos  (3) (1).pdfAnálisis de Artefactos Tecnologicos  (3) (1).pdf
Análisis de Artefactos Tecnologicos (3) (1).pdf
 
Viguetas Pretensadas en concreto armado
Viguetas Pretensadas  en concreto armadoViguetas Pretensadas  en concreto armado
Viguetas Pretensadas en concreto armado
 
certificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdfcertificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdf
 
LINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptx
LINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptxLINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptx
LINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptx
 
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúRed Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
 
Herramientas que posibilitan la información y la investigación.pdf
Herramientas que posibilitan la información y la investigación.pdfHerramientas que posibilitan la información y la investigación.pdf
Herramientas que posibilitan la información y la investigación.pdf
 
La electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdfLa electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdf
 
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
 
El camino a convertirse en Microsoft MVP
El camino a convertirse en Microsoft MVPEl camino a convertirse en Microsoft MVP
El camino a convertirse en Microsoft MVP
 
Slideshare y Scribd - Noli Cubillan Gerencia
Slideshare y Scribd - Noli Cubillan GerenciaSlideshare y Scribd - Noli Cubillan Gerencia
Slideshare y Scribd - Noli Cubillan Gerencia
 

Curso Java Inacap

  • 1. Taller Programación III Java Introducción al Lenguaje de Programación Java Profesor: Marcelo Montecinos C. 1
  • 2. Taller Programación III Java ¿ Por qué JAVA (por qué tan famoso ) ? Orientado al objeto (tendencia en boga) Simple (similar a c, sin complejidades) Multiplataforma (Windows, PowerMac, Unix) Robusto (hace chequeos, elimina punteros) Recolección de basura automática Bibliotecas estándar Realmente portable en un 100% Facilidades para programación en redes Profesor: Marcelo Montecinos C. 2
  • 3. Taller Programación III Java Java - Características Plataforma independiente (portable) Dinámico (constantemente evolucionando) Fortalece la seguridad y la portabilidad Profesor: Marcelo Montecinos C. 3
  • 4. Taller Programación III Java JAVA es un lenguaje interpretado Salida P1.class del P1.java Prog. Compilador de java (específico x plataforma) javac P1.java Intérprete de java (específico x plataforma) java P1 (class) Profesor: Marcelo Montecinos C. 4
  • 5. Taller Programación III Java Java - Características Java -Máquina Virtual (JVM) JVM Interpretador Java Ambiente Runtime Sistema Operativo Hardware Profesor: Marcelo Montecinos C. 5
  • 6. Taller Programación III Java Java - Características ¿Cómo trabaja la tecnología Java? (Editor de texto) (Programa traducido a bytes-code) ¿qué sucede en este paso? Profesor: Marcelo Montecinos C. 6
  • 7. Taller Programación III Java Java - Características ¿Cómo trabaja la tecnología Java? Profesor: Marcelo Montecinos C. 7
  • 8. Taller Programación III Java Estructura de un Programa en Java // Este es el esqueleto de un programa en Java class <nombre del Programa> { Se utiliza para abrir un bloque de instrucciones. /* Definiciones globales*/ /* Metodo Principal*/ /* Otros Métodos*/ Se utiliza para } cerrar un bloque de instrucciones Profesor: Marcelo Montecinos C. 8
  • 9. Taller Programación III Java Estructura de un Programa en Java Los comentarios en Java pueden hacerse de dos maneras: Si sólo quiero comentario de una línea coloco // al inicio de es esta // Este es el esqueleto de un programa en Java class <nombre del Programa> { /* Definiciones globales*/ Si quiero comentario de mas de una línea coloco /* al inicio del comentario y */ al final /* Este es el Método Principal*/ /* Otros Métodos*/ } Profesor: Marcelo Montecinos C. 9
  • 10. Taller Programación III Java Estructura de un Programa en Java // Este es el esqueleto de un programa en Java Deben seguir las class <nombre del Programa> convenciones utilizadas en { algoritmo. /* Definiciones globales*/ Aquí se definen las variables que yo deseo que se puedan utilizar en todo mi programa. /* Método Principal*/ Cada aplicación de Java debe tener un método principal llamado main, que define donde comienza el /* Otros Métodos*/ flujo del programa. } Profesor: Marcelo Montecinos C. 10
  • 11. Taller Programación III Java // Este es el esqueleto de un programa en Java class <nombre del Programa> { /* Definiciones globales*/ public static void main (String args[]) { Todo el código de un método estará entre la llave /* Definiciones locales*/ de apertura ... ( { ) y la correspondiente ... llave de cierre ( } ). /* cuerpo de instrucciones */ ... ... } Sintaxis del método Main } Profesor: Marcelo Montecinos C. 11
  • 12. Taller Programación III Java La palabra public es un especificador de acceso. En este caso el main debe ser // Este es el esqueleto de un programa en Java declarado public ya que es llamado por class <nombre del Programa> { código que está fuera de su clase, cuando el /* Definiciones globales*/ programa comienza. public static void main (String args[]) { La palabra static permite que main sea llamado por el intérprete de Java antes de /* Definiciones locales*/ que se cree cualquier objeto . ... ... /* cuerpo de instrucciones */ La palabra void indica al compilador que ... main no devuelve ningún valor. ... } } String args[], declara una variable args que es una especie de vector que puede contener cadenas de caracteres. Sintaxis del método Main Profesor: Marcelo Montecinos C. 12
  • 13. Taller Programación III Java // Este es el esqueleto de un programa en Java class <nombre del Programa> { /* Definiciones globales*/ public static void main (String args[]) { /* Definiciones locales*/ Aquí se definen las variables que ... solo voy a utilizar en el método ... principal. /* cuerpo de instrucciones */ ... ... Después de cada instrucción se coloca ; } } Sintaxis del método Main Profesor: Marcelo Montecinos C. 13
  • 14. Taller Programación III Java Ejemplo // Este programa escribe un texto class EjemploTexto { public static void main (String args[]) { System.out.println(“El que pregunta algo que no entiende se siente ignorante solo una vez, el que no pregunta lo que no entiende se sentirá ignorante toda su vida”); } } Profesor: Marcelo Montecinos C. 14
  • 15. Taller Programación III Java Salida de datos Para mostrar un texto por pantalla puedo hacerlo de dos maneras: System.out.println (texto); System.out.print (texto); Profesor: Marcelo Montecinos C. 15
  • 16. Taller Programación III Java Salida por pantalla import java.io.*; System.out.println(elementos); System.out.println(); System.out.print(elementos); System.out.println(quot;holaquot;); // escribe quot;holaquot; System.out.println(5); // escribe 5 int i = 5; System.out.println(i) ; // escribe 5; double d=6.4; System.out.println(d); // escribe 6.4; double d=6.4; System.out.println(quot;d=quot;+d); // escribe d=6.4; Profesor: Marcelo Montecinos C. 16
  • 17. Taller Programación III Java Un primer programa en JAVA public class Hello { public static void main(String args[ ]) { System.out.println(“Hola Mundo“); } } Todo programa es escrito como el método estático llamado main en una clase cualquiera Este método se empieza a ejecutar cuando se invoca el intérprete de java para una clase dada args es un arreglo de Strings que contiene los parámetros con los que fué invocado el programa. Profesor: Marcelo Montecinos C. 17
  • 18. Taller Programación III Java Declaración de Variables tipo nombre; tipo nombre1, nombre2, nombre3; tipo nombre = valor; Declaración de Constantes: static final tipo nombre = valor; Profesor: Marcelo Montecinos C. 18
  • 19. Taller Programación III Java Definición de variables Los datos son almacenados en variables, que se encuentran en la memoria, formados por dos componentes el nombre que las identifica y la celda con el valor almacenado. Memoria monto 25600.00 carnet 9702634 sexo ‘F’ nombre ‘Pedro Perez’ contador 6 Profesor: Marcelo Montecinos C. 19
  • 20. Taller Programación III Java Tipos de datos 4 Integer (enteros) 5 237 Numérico Floating Point 13.45 (punto flotante) Profesor: Marcelo Montecinos C. 20
  • 21. Taller Programación III Java Tipos de datos Byte : 8 bits -27 ..... 27 –1 Integer (enteros) Short : 16 bits Int : 32 bits Long : 64 bits Profesor: Marcelo Montecinos C. 21
  • 22. Taller Programación III Java Tipos de datos Float : 32 bits Floating Point (punto flotante) Double : 64 bits Profesor: Marcelo Montecinos C. 22
  • 23. Taller Programación III Java Tipos de datos Caracteres char : ‘a’, ‘z’, ‘D’, ‘%’, ‘s’,’#’…. Cadenas de String: “Pedro Garcia” caracteres “Juan Lopez” ”Rojo” Lógicos boolean: true false Profesor: Marcelo Montecinos C. 23
  • 24. Taller Programación III Java Tipos primitivos de datos en JAVA enteros: int, long, short, byte Const. 1, -1, 1024, 1L reales: float, double Const. 1.0, -3.14159, 1.5e4, 1.0f caracter: char Const. ‘a’, ‘X’, ‘@’ lógico: boolean Const. true, false Constantes de String: “Hola“,“12 de Abril“ Profesor: Marcelo Montecinos C. 24
  • 25. Taller Programación III Java Declaración de variables /* Este programa declara Algunas variables */ class declaraVar { public static void main (String args[]) { int x, y; float z = 3.1416; double w =3.1415; boolean bandera = true; char c; String str; String st1 =“María”; str = “blanco”; } } Profesor: Marcelo Montecinos C. 25
  • 26. Taller Programación III Java Asignación de valores a variables Se puede dar valores a las variables en el momento de su declaración o en una instrucción de asignación independiente una vez que ha sido declarada. Se utiliza el signo = en ambos casos. Ejemplo: int x =5; boolean t; t = true; Profesor: Marcelo Montecinos C. 26
  • 27. Taller Programación III Java Asignación de valores a variables Las asignaciones también pueden ser expresiones en notación INFIJA. Ejemplo: monto = pvp * cantidad ; Donde pvp y cantidad deberán ser variables anteriormente declaradas y con valor previo asignado. Profesor: Marcelo Montecinos C. 27
  • 28. Taller Programación III Java Asignación de valores a variables /* Este programa declara Algunas variables */ class declaraVar { public static void main (String args[]) { int x, y, z; x = 2; y = 4; z = x * y; System.out.println(“El valor de z es “ + z); } } Profesor: Marcelo Montecinos C. 28
  • 29. Taller Programación III Java Asignación de valores a variables Algunas de las operaciones a utilizar en la asignación: () indica prioridad de ejecución * multiplicación / división decimal +,- suma, resta Ejemplo: islv = ( (pvp * cantidad) * porcIslv) ) / 100; Profesor: Marcelo Montecinos C. 29
  • 30. Taller Programación III Java Operadores Igualdad y desigualdad: == , != Comparación: <, <=, >, >= Suma y resta unarios: +, - Suma, multiplicación, división y módulo: +, -, *, /, % Incremento y decremento prefijos y posfijos: ++, -- Desplazamiento con signo y sin signo: <<, >>, >>> Negación lógica unaria de bits: ~ Lógica de bits: &, |, ^ Lógica booleana: &&, || Profesor: Marcelo Montecinos C. 30
  • 31. Taller Programación III Java Asignación Utilización de operadores: var1 = var2 + var3; // asignar a var1 el valor de var2 + var3 var1 = var2 - ver3; // asignar a var1 el valor de var2 - var3 var1 = var2 * ver3; // asignar a var1 el valor de var2 * var3 var1 = var2 / ver3; // asignar a var1 el valor de var2 / var3 var1 = var2 % ver3; // asignar a var1 el valor de var2 % var3 Asignaciones de incremento decremento: variable++; // añadir uno a variable variable--; // restar uno a varibale variable += exp; // añadir exp a variable variable -= exp; // restar exp a variable Profesor: Marcelo Montecinos C. 31
  • 32. Taller Programación III Java Asignación de valores a variables /* Este programa declara Algunas variables */ class declaraVar { public static void main (String args[]) { int x, y, z; x = 2; y = 4; z = (x + y)/ 2; System.out.println(“El valor de z es “ + z); } } Profesor: Marcelo Montecinos C. 32
  • 33. Taller Programación III Java Expresiones Grupos de Precedencia Grupo 0: ( ) Grupo 1: ++, --, + (unario), - (unario) Grupo 2: *, /, % Grupo 3: +, -, + (concatenación) Funciones especiales: Seno x => Math.sin(x) x2 => Math.pow(x,2) Math.round(6.6) => 7 Profesor: Marcelo Montecinos C. 33
  • 34. Taller Programación III Java Expresiones y asignación Aritmeticas: suma + 20 * c / (mod % 3) Relacionales: a > b, b >= c, c != 4, a == 0 De String: “hola “+ nombre + “ hoy es “+ dia + “de”+mes Casts: (int) pi (pi = 3.1) (int) (Math.random()*100)+1) Otros: a == 1 ? a+1 : a-1 Asignacion: a = 1; Asignación como operador: a = b = c = d = 0; boolean cero = ( b = c - 10) == 0; Profesor: Marcelo Montecinos C. 34
  • 35. Taller Programación III Java Conversiones entre tipos Asignar una variable a otra cuyo tipo es mayor de tamaño: byte => short => int => long => float => double Para pasar de un tipo a otro menor en tamaño, tenemos que hacer una conversión explícita de tipos:º (tipo)expresion Profesor: Marcelo Montecinos C. 35
  • 36. Taller Programación III Java Conversiones de tipo Java no reclama si un tipo de menor rango se convierte as uno de mayor rango. byte < short < int < long < float < double Tipo Bits Rango int 32 -2**31 .. 2**31-1 short 16 -2**15 .. 2**15-1 byte 8 -2**7 .. 2**7-1 long 64 -2**63 .. 2**63-1 float 32 -10**32 .. 10**32 double 64 -10**300 .. 10**300 Profesor: Marcelo Montecinos C. 36
  • 37. Taller Programación III Java Ejemplos int i = 1; long l = i; //ok l = 1000000000000; float f = l; //ok double d= 1.0e24; int i = d; // Error float f = 1.0f; int i = f; // Error short s = i; //Error double d = 1.0; int i = (int)d; //ok int i = 256; byte b = (byte)i; //ok pero b ==0; Profesor: Marcelo Montecinos C. 37
  • 38. Taller Programación III Java Excepciones definidas por el usuario public class nombre extends Exception { public nombre() {} public nombre(String s) { } } throw new nombre(“mensaje”); Profesor: Marcelo Montecinos C. 38
  • 39. Taller Programación III Java Ejemplo public void leeArchivo(String nombre) throws IOException { BufferedReader fin = new BufferedReader(new FileReader(nombre)); try { while(true) { cadena = fin.readLine(); System.out.println(cadena); } } catch (EOFException e) { System.out.println(quot;Fin del archivoquot;); } } Profesor: Marcelo Montecinos C. 39
  • 40. Taller Programación III Java Entrada desde teclado import java.io.*; BufferedReader entrada = new BufferedReader(new InputStreamReader(System.in)); String cadena = entrada.readLine(); Profesor: Marcelo Montecinos C. 40
  • 41. Taller Programación III Java Lectura de números int i=Integer.valueOf(in.readLine()).intValue(); double d=Double.valueOf(in.readLine()).doubleValue(); int i=Integer.valueOf(in.readLine().trim()).intValue(); double d=Double.valueOf(in.readLine().trim()).doubleValue(); Profesor: Marcelo Montecinos C. 41
  • 42. Taller Programación III Java Lectura de datos Este programa se encarga de pedir el ingreso de un número, para luego mostrarlo en pantalla. /* 1) */ import java.io.*; /* 2) */ public class LectTecladoApp /* 3) */ { /* 4) */ public static void main(String Arg[ ]) throws IOException /* 5) */ { /* 6) */ BufferedReader entrada= new BufferedReader(new InputStreamReader(System.in)); /* 7) */ int num; /* 8) */ System.out.print(quot;Ingrese numero : quot;); /* 9) */ num = Integer.parseInt(entrada.readLine( )); /* 10) */ System.out.println(quot;Ud ingreso el numero : quot; + num ); /* 11) */ } /* 12) */ } Profesor: Marcelo Montecinos C. 42
  • 43. Taller Programación III Java 1) Se invoca a la librería de entrada y salida io (Input,Output), para usar en nuestro programa todas sus clases disponibles. import : Indica que se tienen importar (incluir) cierta librería. java.io : Acceso a la librería io. java.io.* : Selecciona todas las clases disponibles. 4) Declaración del programa principal con opción de control de errores. throws IOException : Indica que cualquier error de entrada o salida de datos, será manejado en forma interna (automática) por el programa. 6) Se crean las instancias necesarias para crear un objeto que permita manejar la lectura de datos por teclado. Profesor: Marcelo Montecinos C. 43
  • 44. Taller Programación III Java BufferedReader : Clase perteneciente a la librería io que crea un buffer de entrada donde se almacenarán los carácteres ingresados por teclado. in : Variable de tipo BufferedReader. 7) Se declara la variable num de tipo entero (int). 8) Se llama al método print para escribir un mensaje en pantalla dejando el cursor inmediatamente a continuación del mensaje. Profesor: Marcelo Montecinos C. 44
  • 45. Taller Programación III Java 9) Se lee el número, asignando el valor a la variable num. in.readline : Método que retorna el quot;stringquot; leído por teclado. Integer.parseInt : Método que convierte un string (cadena de caracteres) en un dato numérico de tipo int. Integer : Clase estándar que no necesita ser instanciada (está disponible por defecto). 10) Se llama al método println para escribir un mensaje en pantalla que consta de una parte estática y otra variable. El método println y print soportan varios objetos concatenados mediante el operador + , logrando imprimir cadenas de carácteres y variables numéricas. Profesor: Marcelo Montecinos C. 45
  • 46. Taller Programación III Java Estructuras de un Programa Profesor: Marcelo Montecinos C. 46
  • 47. Taller Programación III Java Debemos recordar: class CSumar Todas las instrucciones terminan { con punto y coma “ ; ” Static int v1, v2, suma; Todo el código de un método public static void main (String args[]) o bloque de instrucciones estará entre la llave de apertura { ( { ) y la correspondiente llave System.out.println(quot;Introduzca v1quot;); de cierre ( } ). v1 = CTeclado.ReadInt(); System.out.println(quot;Introduzca v2quot;); Los espacios en blanco se permiten entre los elementos v2 = CTeclado.ReadInt(); del código fuente. Los espacios, suma = v1 + v2; los tabuladores y nuevas líneas deben usarse para dar } legibilidad al código. } Profesor: Marcelo Montecinos C. 47
  • 48. Taller Programación III Java class CSumar Palabras Reservadas Son palabras que tienen un { significado especial dentro static int v1, v2, suma; del lenguaje , en nuestro caso JAVA. public static void main (String args[]) { System.out.println(quot;Introduzca v1quot;); v1 = CTeclado.ReadInt(); System.out.println(quot;Introduzca v2quot;); v2 = CTeclado.ReadInt(); suma = v1 + v2; } } Profesor: Marcelo Montecinos C. 48
  • 49. Taller Programación III Java Identificadores Son identificadores, los nombres que reciben las variables, constantes, clases, métodos o instancias de un programa. Comienzan con una letra y pueden contener letras y números. Son sensitivos a las mayúsculas y minúsculas. Pueden contener palabras claves del lenguaje siempre y cuando no sean completamente iguales. Pueden tener cualquier longitud Profesor: Marcelo Montecinos C. 49
  • 50. Taller Programación III Java Algunas convenciones en cuanto a identificadores. Programas: deben ser nombres, escritos en modo mixto y con la primera letra de cada palabra en mayúsculas. Métodos: deben ser verbos, en modo mixto, con la primera letra en minúscula. Las palabras se separarán usando letras mayúsculas. Variables: deben ser nombres que permitan deducir lo que contienen, siguen las mismas reglas que los subprogramas. Los identificadores de una sola letra deben evitarse. (con sus excepciones) Profesor: Marcelo Montecinos C. 50
  • 51. Taller Programación III Java Inicialización de Variables. En Java, cuando una variable es creada, Java le da un valor inicial según la siguiente tabla. byte,short, int 0 long 0L float 0.0f double 0.0d char ‘u0000’ (null) boolean false variables referencia null Profesor: Marcelo Montecinos C. 51
  • 52. Taller Programación III Java Java Arreglos Profesor: Marcelo Montecinos C. 52
  • 53. Taller Programación III Java Arreglos Es un tipo especial de dato al que se hace referencia por un nombre. Está compuesto por una colección de elementos del mismo tipo de datos que se almacenan consecutivamente en memoria. Pueden ser creados de cualquier tipo. Profesor: Marcelo Montecinos C. 53
  • 54. Taller Programación III Java Arreglos Se pueden declarar como: int[] A; int A[]; Esto es la declaración del puntero al arreglo, no se especifica tamaño en la declaración; Inicialización: A = new int[10]; int[] A = new int[10]; Empiezan desde 0: for(int i=0; i < 10; ++i) A[i] = 0; Se puede averiguar el largo: int largo = A.length; length es un campo del objeto arreglo y no un método. No es necesario el método ya que el Profesor: Marcelo Montecinos C. 54 tamaño, como el contenido de un
  • 55. Taller Programación III Java Arreglos Se utilizan para agrupar información relacionada Pueden tener ser de una o más dimensiones. Los de una dimensión los denominaremos vectores y de los de dos dimensiones matrices o tablas Para accesar un elemento particular del arreglo, se utilizan los índices Profesor: Marcelo Montecinos C. 55
  • 56. Taller Programación III Java Vectores Ejemplo de un vector que contiene 7 números enteros 0 1 2 3 4 5 6 índices 3 6 8 1 0 4 2 Elementos del vector Elemento que ocupa la posición 3 en el vector Profesor: Marcelo Montecinos C. 56
  • 57. Taller Programación III Java Vectores Declaración en Java tipoDato[ ] nombreVariable; tipoDato nombreVariable[ ]; Para declarar un vector de número enteros, al cual se le dá el nombre de miVector se puede hacer de la siguiente manera: int[ ] miVector; // o también int miVector[ ]; Profesor: Marcelo Montecinos C. 57
  • 58. Taller Programación III Java Declaración Vectores int[] miVector; // o también Creación int miVector[]; nombreVector = new tipoDato[tamaño]; Cuando se declara una variable vector, esta no tiene ningún valor. Antes de asignar cualquier valor, se debe reservar un espacio en memoria, utilizando el operador new y asignarlo a la variable. Continuando con el ejemplo anterior miVector = new int[7]; Profesor: Marcelo Montecinos C. 58
  • 59. Taller Programación III Java Vectores Creación: Creación: miVector = new int[7]; Al reservar espacio para los elementos de un vector, mediante new, se inicializa automáticamente en cero su contenido. Cuando se ejecuta esta sentencia de creación , la varianble miVector, hará referencia a un vector de 7 elementos enteros. New: operador especial que reserva espacio en memoria Profesor: Marcelo Montecinos C. 59
  • 60. Taller Programación III Java Vectores Inicialización: Dependiendo del tipo de datos que contenga un vector, estos son inicializados por defecto con los siguientes valores: Si son vectores numéricos, se inicializan en cero. Si son vectores de caracteres, se inicializan en ‘/u000’. Si son vectores booleanos, se inicializan en false. Profesor: Marcelo Montecinos C. 60
  • 61. Taller Programación III Java Vectores Creación: miVector = new int[7]; Inicialización Un vector completo se puede inicializar de la siguiente manera miVector = {3, 6, 8, 1, 0, 4, 2}; Profesor: Marcelo Montecinos C. 61
  • 62. Taller Programación III Java Creación: Vectores miVector = new int[7]; Utilización nombreVector [índice] Para accesar un elemento de un vector, se coloca el nombre del vector y entre corchetes el índice del elemento que se desea. Por ejemplo, si se desea obtener el número 8 del siguiente vector: 0 1 2 3 4 5 6 3 6 8 1 0 4 2 miVector [2] Profesor: Marcelo Montecinos C. 62
  • 63. Taller Programación III Java Vectores Creación: miVector = new int[7]; Utilización Los índices en un vector, van desde 0 hasta el tamaño – 1. El tamaño de un vector se obtiene con el método length, con la siguiente sintaxis: nombreVector.length En nuestro ejemplo: miVector.length Profesor: Marcelo Montecinos C. 63
  • 64. Taller Programación III Java Vectores Ejemplo: crear un vector de 5 posiciones, rellenarlo y luego mostrar su contenido. class EjemploVec { static int miVector[ ]; public static void main (String arg[]) { miVector = new int[5]; llenarVector(); mostrarVector(); System.out.print(quot;El tamano de mi vector es quot;); System.out.println(miVector.length); } Profesor: Marcelo Montecinos C. 64
  • 65. Taller Programación III Java Vectores static void llenarVector() { for (int i=0; i <= 4; i++) { System.out.println(quot;Intro. numero de posicion quot; + i + quot; quot;); miVector[i] = CTeclado.ReadInt(); } } static void mostrarVector() { for (int i=0; i <= 4; i++) System.out.print(miVector[i] + quot; quot;); } }// fin de clase Profesor: Marcelo Montecinos C. 65
  • 66. Taller Programación III Java Matrices 0 1 2 3 4 5 0 (matriz 2 3) 1 2 3 (matriz 4 0) 4 5 Profesor: Marcelo Montecinos C. 66
  • 67. Taller Programación III Java Matrices Son arreglos de dos dimensiones La información es dispuesta en filas y columnas Para accesar un elemento se deben especificar dos subíndices: fila y columna. Pueden ser creadas de cualquier tipo Pueden ser vistos como vectores de vectores Profesor: Marcelo Montecinos C. 67
  • 68. Taller Programación III Java Matrices Declaración: tipoDato nombreVariable[ ][ ]; Para declarar una matriz de números enteros, llamada miMatriz, se debe hacer de la siguiente manera: int miMatriz[ ][ ]; Profesor: Marcelo Montecinos C. 68
  • 69. Taller Programación III Java Matrices Creación: nombreMatriz = new tipoDato[filas][columnas]; Para crear una matriz de 2 filas y 3 columnas de números enteros, llamada miMatriz, se escribe miMatriz = new int [2][3]; Profesor: Marcelo Montecinos C. 69
  • 70. Taller Programación III Java Matrices Creación: miMatriz = new int [2][3]; genera miMatriz[0][0] miMatriz[0][1] miMatriz[0][2] miMatriz[1][0] miMatriz[1][1] miMatriz[1][2] Profesor: Marcelo Montecinos C. 70
  • 71. Taller Programación III Java Matrices Creación: miMatriz = new int [2][3]; Primero crea un vector de 2 elementos Elemento 0 Elemento 1 Profesor: Marcelo Montecinos C. 71
  • 72. Taller Programación III Java Matrices Creación: miMatriz = new int [2][3]; Luego cada elemento lo transforma en un vector de 3 elementos miMatriz[0][0] miMatriz[0][1] miMatriz[0][2] Fila 0 miMatriz[1][0] miMatriz[1][1] miMatriz[1][2] Fila 1 Columna 0 Columna 2 Profesor: Marcelo Montecinos C. 72
  • 73. Taller Programación III Java Matrices Ejemplo: Crear una matriz de 2 filas y 3 columnas, llenarla y luego mostrar su contenido. class EjemploMat { public static void main (String arg[]) { int miMatriz[][]; miMatriz = new int[2][3]; llenarMatriz(miMatriz); mostrarMatriz(miMatriz); } Profesor: Marcelo Montecinos C. 73
  • 74. Taller Programación III Java static void llenarMatriz(int m[][]) { for (int i=0; i < 2; ++i) { for (int j=0; j< 3; ++j) { System.out.println(quot;Intro. Elem. quot; + i + quot; quot; + j); m[i][j] = CTeclado.ReadInt(); } } } static void mostrarMatriz(int m[][]) { for (int i=0; i < 2; i++) { for (int j=0; j< 3; j++) { System.out.print(m[i][j] + quot; quot;); } System.out.println(); } } } Profesor: Marcelo Montecinos C. 74
  • 75. Taller Programación III Java Ejercicios 1. Se deben crear tres vectores vecA, vecB y vecC de m elementos cada uno; se debe crear otro arreglo vecNuev donde cada elemento sea la suma de los elementos de cada arreglo. 2. Se deben crear dos vectores. En uno se colocarán los carnet de los estudiantes que aprobaron Cálculo 1, en otro los que aprobaron Etica. Crear un tercer arreglo que contenga los carnet de los estudiantes que aprobaron ambas materias. Profesor: Marcelo Montecinos C. 75
  • 76. Taller Programación III Java Ejercicios 3. Se deben crear dos vectores uno de ellos de n elementos, el otro de m elementos . Llenarlos con números ,colocándo en cada uno los elementos ordenados de menor a mayor. Crear un tercer vector de tamaño n+m el cual contendrá los elementos de los vectores ordenados de menor a mayor. Profesor: Marcelo Montecinos C. 76
  • 77. Taller Programación III Java Operadores Los operadores de un lenguaje se utilizan para combinar o modificar los valores de de un programa. Vamos a estudiar los siguientes operadores: Aritméticos : binarios y unitarios. Operadores de Asignación. Relacionales. Lógicos. Profesor: Marcelo Montecinos C. 77
  • 78. Taller Programación III Java Operadores Aritméticos Binarios. Binarios Operador Significado + Suma - Resta * Multiplicación / División entera (si los operandos son de tipo entero) / División real (si los operandos son reales) % Módulo, resto de división entera (no es necesario que los operandos sean reales) Profesor: Marcelo Montecinos C. 78
  • 79. Taller Programación III Java Operadores Aritméticos Binarios. Veamos un ejemplo: class CPrueba { public static void main(String arg[]) { int i , j; i=5; j = i % 2; System.out.println(quot;el valor de j es quot;+j); 1 j = i / 2; System.out.println(quot;el valor de j es quot;+j); 2 j = i * 2; System.out.println(quot;el valor de j es quot;+j); 10 } } Profesor: Marcelo Montecinos C. 79
  • 80. Taller Programación III Java Operadores Aritméticos Unitarios. Operador Significado ++ Incremento -- Decremento Estos operadores se pueden aplicar en dos formas, prefija y postfija, que adquieren importancia cuando los mismos se usan dentro de una expresión mayor. Profesor: Marcelo Montecinos C. 80
  • 81. Taller Programación III Java Operadores Aritméticos Unitarios. Unitarios Veamos un ejemplo: class CPrueba { public static void main(String arg[]) { int i; i=5; //incrementando antes o después de a System.out.println(quot;el valor de i++ es quot;+ i++); 5 System.out.println(quot;el valor de i++ es quot;+ ++i); 7 } } Profesor: Marcelo Montecinos C. 81
  • 82. Taller Programación III Java Operadores Aritméticos Unitarios. Unitarios Veamos un ejemplo: class CPrueba { public static void main(String arg[]) { int i; i=5; //decrementando antes o después de a System.out.println(quot;el valor de i-- es quot;+ i--); 5 System.out.println(quot;el valor de i-- es quot;+ --i); 3 } } Profesor: Marcelo Montecinos C. 82
  • 83. Taller Programación III Java Operadores de Asignación. Operador Significado = asignación += asignación y suma -= asignación y resta *= asignación y mult. /= asignación y div. %= asignación y mod. Profesor: Marcelo Montecinos C. 83
  • 84. Taller Programación III Java Operadores de Asignación. Veamos un ejemplo: class CPrueba { public static void main(String arg[]) { int i , j; i=5; i += 2; // equivale a i = i + 2; System.out.println(quot;el valor de i es quot;+i); 7 i = 5; i %= 2; // equivale a i = i % 2; System.out.println(quot;el valor de i es quot;+i); 1 } } Profesor: Marcelo Montecinos C. 84
  • 85. Taller Programación III Java Operadores Relacionales. Operador Nombre Ejemplo Respuesta == igual 1 == 2 false != distinto 1 != 2 true > mayor que 1 >2 false < menor que 1 <2 true >= mayor o igual 1 >= 2 false <= menor o igual 1 <= 2 true Profesor: Marcelo Montecinos C. 85
  • 86. Taller Programación III Java Operadores Lógicos. Operador Significado && and || or Tablas de valores lógicos: AND T F OR T F T T F T T T F F F F T F Profesor: Marcelo Montecinos C. 86
  • 87. Taller Programación III Java Operadores Orden de precedencia en los operadores: 1. ++ -- 2. * / % 3. + - 4. < > <= >= 5. == != 6. & 7. | 8. = *= /= %= += -= Profesor: Marcelo Montecinos C. 87
  • 88. Taller Programación III Java Expresiones Lógicas Las expresiones lógicas se definen como un conjunto de operadores y operandos. Son las que devuelven como resultado un valor booleano (true o false). Contienen operadores relacionales y/o operadores lógicos. Ejemplo: (X >= Y) (X >= Y) && (X>= Z) (A != 0) || (AMarcelo Montecinos C. Profesor: != 5) 88
  • 89. Taller Programación III Los argumentos Java un programa de Si se invoca al programa P1 de ka siguiente manera: java P1 estos son parametros entonces en el programa se tendrá args[0] = “estos”, args[1] = “son”, args[2] = “parametros”. Se reciben como un arreglo de strings en la variable declarada como parámetro del programa String args[] public class Parametros { public static void main(String args[]) { for(int i=0; i < args.length; i++) System.out.pritnln(args[i]); } } Profesor: Marcelo Montecinos C. 89
  • 90. Taller Programación III Java Exceptions Una Exeption es un evento que rompe la ejecución normal de un programa (debido a un error). Cuando ocurre un evento como este un objeto de la clase Exception es generado o “lanzado” (throw). Existen varios tipos de clases derivadas Exception dependiendo de que fue lo que originó el evento: IOException, IndexOutOfBoundsException, UnknownHostException, etc. Cuando esto sucede, el intérprete de JAVA busca un exception handler adecuado para esta exception, que ejecuta un pedazo de código (programado por el usuario) que debería reaccionar en forma adecuada a esta falla del programa. Esto se llama “atrapar una exception” (catch). Cuando no se ha escrito ningún ningún handler que atrape esta exception, el programa se detiene (se cae). La razón para introducir exceptions es que la programación para reaccionar ante fallas se hace más fácil (no hay que preverlas todas). Profesor: Marcelo Montecinos C. 90
  • 91. Taller Programación III Java Cómo programar Exception Handlers ? Forma general: en un bloque try-catch try { lista de instrucciones que pueden generar un error } catch (ExceptionTipo1 e) { lista de instrucciones para enmendar el error de Tipo1 { catch (ExceptionTipo2 e) { lista de instrucciones para enmendar el error de Tipo1 } catch (ExceptionTipo3 e) { lista de instrucciones para enmendar el error de Tipo1 } Si no se conoce o no importa el tipo de exception específico se puede poner Exception y se atrapan todos (basta un solo bloque cach). Si hay más de un bloque se ejecuta sólo un bloque catch según el tipo de error. Profesor: Marcelo Montecinos C. 91
  • 92. Taller Programación III Java Ejemplo de Exception I/O Muchas veces el compilador OBLIGA a programar el código de modo de atrapar exceptions cuando estas pueden suceder con cierta probabilidad. Las más frecuentes son las de IO. import java.io.*; //importa clases de la biblioteca IO public class ProgrmaÍO{ public static void main(String args[]) { BufferedReader in; PrintWriter out; String line; try { in = new BufferedReader(new FileReader(“Origen.txt”))}; catch (IOException e) { System.out.println(“error en apertura”); System.exit(1);} try { out = new PrintWriter( new FileWriter(“Destino.txt”))}; catch (IOException e) { System.out.println(“error en creacion”); System.exit(1);} try { while( (line = in.readLine()) != null) out.println(line); catch (IOException e) { System.out.println(“problemas”);} } } Profesor: Marcelo Montecinos C. 92
  • 93. Taller Programación III Java Ejemplo de Exception I/O (2) Se puede omitir poner tantos try-catch si no importa donde sucedió import java.io.*; //importa clases de la biblioteca IO public class ProgrmaÍO2{ public static void main(String args[]) { BufferedReader in; PrintWriter out; String line; try { in = new BufferedReader( new InputStreamReader(System.in)); out = new PrintWriter( new FileWriter(“Destino.txt”)); System.out.println(“ingrese linea”); while( (line = in.readLine()) != “”){ out.println(line); System.out.println(“ingrese linea”); } catch (Exception e) { System.out.println(“problemas”); } } Profesor: Marcelo Montecinos C. } 93
  • 94. Taller Programación III Java Ejemplo de Exception I/O (3) También se puede evitar tener que preocuparse de las exceptions siempre y cuando el método que la pordría generar se declare como que “lanza” una excepción: import java.io.*; //importa clases de la biblioteca IO public class ProgrmaÍO3{ public static void main(String args[]) throws IOException{ BufferedReader in; PrintWriter out; String line; in = new BufferedReader(new FileReader(“Origen.txt”)); out = new PrintWriter( new FileWriter(“Destino.txt”)); while( (line = in.readLine()) != null) out.println(line); } } Esto implica que el programa se caerá si hay una excepción durante la generación del programa. En otros casos se puede declarar que uno o más métodos lanzan una IOException y el programa o método principal se preocupa de escribir el Exception handler. Profesor: Marcelo Montecinos C. 94
  • 95. Taller Programación III Java Estructuras de Decisión Profesor: Marcelo Montecinos C. 95
  • 96. Taller Programación III Java Estructuras de Decisión if (expresión lógica) { <bloque de instrucciones > } else { <bloque de instrucciones> } Profesor: Marcelo Montecinos C. 96
  • 97. Taller Programación III Java Estructuras de Decisión Veamos un ejemplo: class CPrueba { public static void main(String arg[]) { int a , b; a = 1; b = 3; if (a < b) { System.out.println(a); } else { System.out.println(b); } } } Profesor: Marcelo Montecinos C. 97
  • 98. Taller Programación III Java Estructuras de Decisión Decisión Anidada if (expresión lógica) { if (expresión lógica) { <bloque de instrucciones > } else { <bloque de instrucciones > } } else { <bloque de instrucciones > } Profesor: Marcelo Montecinos C. 98
  • 99. Taller Programación III Java Veamos un ejemplo de Decisión Anidada class CPrueba { public static void main(String arg[]) { int a , b, c; a = 1; b = 3; if (a < b) { if (b > c) { a++; } else { b++; } } else { a = a + b; } } } Profesor: Marcelo Montecinos C. 99
  • 100. Taller Programación III Java Estructuras de Decisión Veamos otro ejemplo de Decisión Anidada if (X > 10) { if (X < 20) { System.out.println( X + ” esta entre 10 y 20”); } else { System.out.println( X + “es mayor a 20”); } } else { if (X > 0) { System.out.println( X + “entre 1 y 10”); } else { System.out.println( X + “igual o menor a cero”); } } Profesor: Marcelo Montecinos C. 100
  • 101. Taller Programación III Java Estructuras de Decisión Ejercicio Deseamos hacer un programa que dado el sueldo de una persona, le aumente un 50% si la persona gana menos de 180000 Bs ó un 20% si gana más. if (sueldo < 18000) { sueldo *= 1.5; } else { sueldo *= 1.2; } Profesor: Marcelo Montecinos C. 101
  • 102. Taller Programación III Java Estructuras de Decisión if – else - if Llamada también : alternativas múltiples. Realiza una verificación de las expresiones lógicas, y cuando consigue una que se cumple, ejecuta su bloque de instrucciones y no toma en cuenta el resto de las expresiones. Si no se cumple ninguna expresión, ejecuta el else. No necesariamente debe tener else. Profesor: Marcelo Montecinos C. 102
  • 103. Taller Programación III Java Estructuras de Decisión if – else - if Haremos un programa que me permita evaluar una función, en base a un número d. Si d > 0 (-4 + Math.sqrt (d))/2 Si d = 0 -4/2 Si d < 0 (-4 + Math.sqrt (Math.abs (d)) )/2 Profesor: Marcelo Montecinos C. 103
  • 104. Taller Programación III Java Estructuras de Decisión class CEvaluar { public static void main (String args[]) { int d; double x; System.out.println (quot;Introduzca el valor de d quot;); d = CTeclado.ReadInt(); if (d > 0) { x = (-4 + Math.sqrt (d))/2; } else if (d == 0) { x = -4/2; } else { x = (-4 + Math.sqrt (Math.abs (d)) )/2; } System.out.println (quot;El valor de x es quot; + x); } } Profesor: Marcelo Montecinos C. 104
  • 105. Taller Programación III Java Estructuras de Decisión swicht switch (expr1) { case valor1: instrucciones; break; case valor2: instrucciones; break; default: instrucciones; break; } Profesor: Marcelo Montecinos C. 105
  • 106. Taller Programación III Java Estructuras de Decisión switch expr1 debe ser compatible con valores switch (expr1) enteros o carácter. { Cuando la expresión coincide con algún case valor1: literal de la sentencia case, se ejecutan las instrucciones; instrucciones correspondientes a ese case Si ninguna de las constantes coincide con break; la expresión, se ejecutal el default si existe. case valor2: Si no existe el default, no se ejecuta nada. instrucciones; La sentencia break se utiliza para break; terminar una secuencia de instrucciones, haciedo que la ejecución salte a la primera default: línea de código que sigue a la sentencia instrucciones; swicht completa. break; La sentencia break es opcional, de } omitirse la ejecución continuará en el siguiente case. Profesor: Marcelo Montecinos C. 106
  • 107. Taller Programación III Java Estructuras de Decisión Veamos un ejemplo con switch en Java switch (numEst) { case 20: numEst += 3; break; case 50: numEst++; break; default: numEst--; break; } Profesor: Marcelo Montecinos C. 107
  • 108. Taller Programación III Java Estructuras de Decisión Veamos un ejemplo con switch Haremos un programa que reciba un mes (número) y nos indique la estación que hay en ese mes. Profesor: Marcelo Montecinos C. 108
  • 109. Taller Programación III switch (mes) Java { case 12: case 1: case 2: System.out.println (quot;Inviernoquot;); break; case 3: case 4: case 5: System.out.println (quot;Primaveraquot;); break; case 6: case 7: case 8: System.out.println (quot;Veranoquot;); break; case 9: case 10: case 11: System.out.println (quot;Otonoquot;); break; default: System.out.println (quot;Mes desconocidoquot;); Profesor: Marcelo Montecinos C. 109 }
  • 110. Taller Programación III Java switch (mes) { case 12: case 1: System.out.println (“Estamos en quot;); case 2: Si mes = 2 System.out.println (quot;Inviernoquot;); break; La salida es: case 3: Invierno case 4: case 5: System.out.println (quot;Primaveraquot;); break; case 6: case 7: case 8: System.out.println (quot;Veranoquot;); break; Si mes = 12 case 9: case 10: La salida es: case 11: Estamos en System.out.println (quot;Otonoquot;); break; Invierno default: System.out.println (quot;Mes desconocidoquot;); } Profesor: Marcelo Montecinos C. 110
  • 111. Taller Programación III Java Ejercicios 1. Desarrolle un programa en Java que le permita leer el nombre , la edad , el sexo y el estado civil de cualquier persona e imprima el nombre de la persona si es un hombre casado y mayor de 40 años o una mujer soltera menor de 50 años. 2. Desarrolle un programa en Java para leer el nombre de un empleado, el salario básico por hora y el número de horas trabajadas durante una semana. Calcule el salario neto , teniendo en cuenta que si el número de horas trabajadas durante la semana es mayor de 48 horas, esas horas demás se consideran horas extras y tienen un recargo del 35%. Imprima el nombre del empleado y su salario neto. Profesor: Marcelo Montecinos C. 111
  • 112. Taller Programación III Java Ejercicios En la tienda “Sigo de pie” los empleados reciben una cierta comisión dependiendo del código del artículo que vendan. Código del artículo Cálculo de la comisión 1 15% del precio de venta 2 40% de la diferencia del precio de venta y el precio mínimo de venta 3 10% del precio mínimo de venta más el 50% de la diferencia del precio de venta y el precio mínimo de venta 4 Bs. 100 por unidad más el 5% del precio mínimo de venta 5 Bs. 500 por unidad Hacer un programa que imprima el Nombre del vendedor, el código Profesor: Marcelo Montecinos C. 112 del artículo que vendió y la comisión que se ganó.
  • 113. Taller Programación III Java Resumen En resumen, los conceptos vistos fueron : if (expresión lógica) { bloque de instrucciones } else { bloque de instrucciones } if – else - if switch (expr1) { Instrucciones case valor1: instrucciones; break; case valor2: instrucciones; break; default: instrucciones; break; } Profesor: Marcelo Montecinos C. 113
  • 114. Taller Programación III Java Sentencias de Iteración Profesor: Marcelo Montecinos C. 114
  • 115. Taller Programación III Java Sentencias de Iteración Las sentencias de iteración en Java son: while, do-while y for. Se utilizan para ejecutar varias veces un conjunto de instrucciones. Cada sentencia de repetición tiene una utilidad adecuada dependiendo de la situación. Profesor: Marcelo Montecinos C. 115
  • 116. Taller Programación III while Java Sentencias de Iteración while (expresión lógica) { bloque de instrucciones; } Ejemplo: Mostrar los números del 0 al 9 int i =0; while (i < 10) { System.out.println(“el valor de i es : “ + i); i++; } Profesor: Marcelo Montecinos C. 116
  • 117. Taller Programación III while Java Sentencias de Iteración Evalúa su expresión condicional al inicio del bucle. Repite un bloque de instrucciones, mientras su expresión sea verdadera. Cuando la expresión es falsa, el control pasa a la siguiente línea de código que hay inmediatamente después del bucle. Puede suceder que el bloque de intrucciones nunca se ejecute. Profesor: Marcelo Montecinos C. 117
  • 118. Taller Programación III Java class CalFactura { public static void main(String args[ ]) { char resp; double monto,isv; System.out.println(quot;Indique si desea calcular factura s/nquot;); resp=CTeclado.ReadChar( ); while ((resp =='s') || (resp =='S')) { System.out.println(quot;Indique el monto de la facturaquot;); monto=CTeclado.ReadDouble(); isv=(monto*14.5/100); System.out.println(quot;El monto a pagar de ISV es :quot;+isv); System.out.println(quot;Desea calcular para otra facturaquot;); resp=CTeclado.ReadChar(); } } } Profesor: Marcelo Montecinos C. 118
  • 119. Taller Programación III do-while Java Sentencias de Iteración do { bloque de instrucciones; } while (expresion lógica); Ejemplo: x=0; Mostrar los números do divisibles por 3 { menores a 20 x = x + 3; System.out.println(“x = “ + x); } Profesor: Marcelo Montecinos C. while (x < 20); 119
  • 120. Taller Programación III Java do-while Sentencias de Iteración Evalúa su expresión condicional al final del bucle. Repite un bloque de instrucciones, mientras su expresión sea verdadera. Cuando la expresión es falsa, el control pasa a la siguiente línea de código que hay inmediatamente después del bucle. El bloque de instrucciones de este ciclo se ejecuta al Profesor: Marcelouna vez. menos Montecinos C. 120
  • 121. Taller Programación III Java class NotasEstudiantes { public static void main(String args[ ]) { char resp; int notaTeo,acumTeo; do { System.out.println(quot;Indique la Nota de Teoria quot;); notaTeo=CTeclado.ReadInt(); acumTeo=(NotaTeo*50/100); System.out.println(quot;El acumulado teoria es :quot;+acumTeo); System.out.println(quot;Desea calcular acumulado para otro estudiante quot;); resp=CTeclado.ReadChar(); } while ((resp == 's') || (resp =='S')); } } Profesor: Marcelo Montecinos C. 121
  • 122. Taller Programación III for Java Sentencias de Iteración for (expr. inicial; expr. Lógica;modificacion) { bloque de instrucciones; } Ejemplo: Mostrar los números del 1 al 10 for (int i = 1; i < 10; i++) { System.out.println(“i = “ + i); } Profesor: Marcelo Montecinos C. 122
  • 123. Taller Programación III Java for Sentencias de Iteración Se utiliza para ejecutar un bloque de instrucciones un número determinado (fijo) de veces. Repite un bloque de instrucciones, mientras su expresión sea verdadera. La primera vez que se va a ejecutar el ciclo, se realiza la inicialización, es decir, se declara y asigna un valor inicial a la variable que va a controlar el ciclo. Esto sucede una sola vez. Cuando la expresión es verdadera, se ejecuta la modificación de la variable que controla el ciclo. Esto es automático. Profesor: Marcelo Montecinos C. 123
  • 124. Taller Programación III Java class Serie { public static void main(String args[ ]) { int valoralor,termino,sumSerie; System.out.println(quot;Indique el valor a calcular la serie :quot;); valor=CTeclado.ReadInt( ); System.out.println(quot;Indique la cantidad de términos :quot;); termino=CTeclado.ReadInt( ); sumSerie=0; for (int contador = 1 ; contador <= termino; contador++) { sumSerie = sumSerie + contador*valor; } System.out.println(quot;El resultado de la serie es :quot;); System.out.println(sumSerie); } } } Profesor: Marcelo Montecinos C. 124
  • 125. Taller Programación III Java Sentencias de Iteración En resumen, los conceptos vistos fueron : while (expresión lógica) { bloque de instrucciones; } do { Instrucciones bloque de instrucciones; } while (expresion lógica); for (expr. inicial; expr. Lógica; paso) { bloque de instrucciones; Profesor: Marcelo Montecinos C. } 125
  • 126. Taller Programación III Java Ejercicios 1. Se desea saber el promedio de notas que tiene un estudiante. Hasta la fecha ha cursado 6 materias; además se quiere el número de materias reprobadas y el número de materias aprobadas. Escribir el programa en Java dado el Algoritmo Entrada. Salida: nota: numérico promn, numa, numr: numérico Profesor: Marcelo Montecinos C. 126
  • 127. Taller Programación III Java 1. Inicio Promedio. 2. numa, numr, prom, acumNotas,nota: numérico 3. numa 0 4. numr 0 5. acumNotas 0 6. Para cont=1 hasta 6 hacer (+1) Comenzar 6.1 Leer nota 6.2 acumNotas acumNotas+nota 6.3 Si (nota < 10) entonces 6.3.1 numr numr + 1 Sino 6.3.2 numa numa + 1 Fin Para 7. prom acumNotas/6 8. Mostrar (“ El promedio del estudiantes es : “prom) 9. Mostrar (“El estudiante tiene “, numa , “materias aprobadas”) 10. Mostrar (“El estudiante tiene “ ,numr, “materias reprobadas”) 11. Terminar Promedio Profesor: Marcelo Montecinos C. 127
  • 128. Taller Programación III Java 2. Se requiere que se obtenga la misma información pero, para todos los estudiantes de una escuela. Entrada. Salida: nota: numérico promn, numa, numr: numérico Profesor: Marcelo Montecinos C. 128
  • 129. 1. Inicio Escuela. Programación III Taller 2. promedioMax, numa, numr, prom,acumNotas,nota,carnet: numérico 3. Leer carnet Java 4. promedioMax 0 5. Mientras ( carnet != 0 ) hacer Comenzar 3.1 numa 0 3.2 numr 0 3.3 acumNotas 0 3.4 Para cont=1 hasta 6 hacer +1 Comenzar 3.4.1 Leer nota 3.4.2 acumNotas acumNotas + nota 3.4.3 Si( nota < 10) entonces 3.4.3.1 numr numr + 1 sino 3.4.3.2 numa numa + 1 Fin para 3.5 prom acumNotas/6 3.6 Si (prom > promedioMax) entoces 3.6.1 promedioMax prom 3.7 Mostrar (“ El promedio del estudiantes es : “prom) 3.8 Mostrar (“El estudiante tiene “, numa ,“materias aprobadas”) 3.9 Mostrar (“El estudiante tiene “, numr, “materias reprobadas”) 3.10 Leer carnet Fin Mientras 6. Mostrar promedioMax 7. Terminar Escuela Profesor: Marcelo Montecinos C. 129
  • 130. Strings en Java Cadena de caracteres Profesor: Marcelo Montecinos C. 130
  • 131. Taller Programación III Java Strings En Java un String no es un tipo de dato primitivo como char o int. Es una clase que maneja cadena de caracteres. Profesor: Marcelo Montecinos C. 131
  • 132. Taller Programación III Java Se declara la variable de tipo de dato cadena. Strings String nombre,cadena; Se crea una instancia de cadena, con el constructor por defecto. nombre = new String(); nombre = new String(quot;carameloquot;); Para asignarle una secuencia de caracteres. nombre= quot; Maria Perezquot;; Para hacer referencia a la misma instancia del String cadena = nombre; A partir de este momento cadena y nombre hacen referencia a la misma instancia. (No se copia el valor , solo la referencia) Profesor: Marcelo Montecinos C. 132
  • 133. Taller Programación III Java Strings Para obtener la longitud de la candena nombre.length() Si deseamos concatenar cadenas nombre = quot;Juanquot;+quot; Garcia”; Se puede utilizar el metodo concat para concatenar dos cadenas, nombre = quot; Carlos“; cadena=nombre.concat(quot; Juan quot;); el contenido de cadena, al final sería: quot;CarlosJuan quot; Profesor: Marcelo Montecinos C. 133
  • 134. Taller Programación III Java String Para obtener el caracter que se encuentra en una posición charAt(posición); ejemplo, cadena.charAt(0) devolveria el caracter “C” donde posición se inicia en cero. Para extraer una subcadena, hay dos formas substring(int posiciónInicial); copia desde la posición inicial hasta el final de la cadena substring(int posiciónInicial, int posicionFinal); copia desde la posición inicial hasta la posición final-1 Profesor: Marcelo Montecinos C. 134
  • 135. Taller Programación III Java String Un ejemplo de substring, nombre=“Maria Rosa”; System.out.println(nombre.substring(2)); System.out.println(nombre.substring(2,4)); la salida sería, ria Rosa ri Profesor: Marcelo Montecinos C. 135
  • 136. Taller Programación III Java String Para sustituir una letra por otra dentro de la cadena replace(char original,char sustituto) ejemplo, cadena=“casa mia”; System.out.println(cadena.replace('a','e')); la salida sería, cese mie Profesor: Marcelo Montecinos C. 136
  • 137. Taller Programación III Java String Para convertir los caracteres de una cadena de mayúsculas a minúsculas toLowerCase() ejemplo, cadena=“CASA MIA”; System.out.println(cadena.toLowerCase()); la salida sería, casa mia Profesor: Marcelo Montecinos C. 137
  • 138. Taller Programación III Java String Para convertir los caracteres de una cadena de minúsculas a mayúsculas toUpperCase() ejemplo, cadena=“casa mia”; System.out.println(cadena.toUpperCase()); la salida sería, CASA MIA Profesor: Marcelo Montecinos C. 138
  • 139. Taller Programación III Java String Para comparar los caracteres dentro de dos cadenas equals() ejemplo, if (s1.equals(s2)) { System.out.println(quot;Son iguales los caracteresquot;); } else { System.out.println(quot;no son iguales los caracteresquot;); } Profesor: Marcelo Montecinos C. 139
  • 140. Taller Programación III Java String Para comparar los caracteres dentro de dos instancias, sin diferenciar entre mayúsculas y minúsculas equalsIgnoreCase() ejemplo, if (s1.equalsIgnoreCase(s2)) { System.out.println(quot;Son iguales los caracteresquot;); } else { System.out.println(quot;no son iguales los caracteresquot;); } Profesor: Marcelo Montecinos C. 140
  • 141. Taller Programación III Java String Para comparar si dos objetos hacen referencia a la misma instancia == ejemplo, if (s1==s2) { System.out.println(“Son el mismo objeto“); } else { System.out.println(“No son el mismo objeto”); } Profesor: Marcelo Montecinos C. 141
  • 142. Taller Programación III Java String Para saber si una cadena es menor, igual o mayor lexicográficamente que otra. compareTo() ejemplo, if (s1.compareTo(s2) < 0) {System.out.println(“s1 es menor a s2quot;);} else { if (s1.compareTo(s2) == 0) { System.out.println(“s1 es igual a s2quot;); } else {System.out.println(“s1 es mayor s2quot;);} } Profesor: Marcelo Montecinos C. 142
  • 143. Taller Programación III Java String Para determinar si la cadena comienza con una cadena especificada. startsWith() ejemplo, if (s1.startsWith(quot;carquot;)) { System.out.println(quot;SIquot;); } else { System.out.println(quot;NOquot;); } Profesor: Marcelo Montecinos C. 143
  • 144. Taller Programación III Java String Para determinar si una cadena se encuentra, a partir de una posición, dentro de una cadena especificada, startsWith(String cadena,int posición) ejemplo, if (s1.startsWith(quot;carquot;,3)) { System.out.println(quot;SIquot;); } else { System.out.println(quot;NOquot;); Profesor: Marcelo Montecinos C. } 144
  • 145. Taller Programación III Java String Para determinar si la cadena termina con una cadena dada. endsWith() ejemplo, if (s2.endsWith(quot;SAquot;)) { System.out.println(quot;SIquot;); } else { System.out.println(quot;NOquot;); } Profesor: Marcelo Montecinos C. 145
  • 146. Taller Programación III Java Paquetes Paquetes Java más importantes: - lang – para funciones del lenguaje; - util – para utilidades adicionales; - io – para entrada y salida; - text – para formateo especializado; - awt – para gráficos e interfaz gráfica de usuario Para acceder a cualquiera de estos paquetes, excepto lang que está siempre disponible, usamos el siguiente modelo: import java.nombrepaquete.*; Profesor: Marcelo Montecinos C. 146
  • 147. JDBC Java Database Connectivity Profesor: Marcelo Montecinos C. 147
  • 148. Taller Programación III Java Introducción JDBC es una API, formada por conjunto de clases e interfaces en el lenguaje de programación Java, para ejecutar sentencias SQL. Ofrece un estándar de conexión a cualquier base de datos disponible en el mercado. Permite obtener los datos en forma fácil y cómoda en ambientes cliente-servidor a través de Internet/Intranet. Profesor: Marcelo Montecinos C. 148
  • 149. Taller Programación III Java ¿Qué hace JDBC? Establece una conexión a una base de datos. Envía sentencias SQL. Procesa los resultados de estas sentencias. Profesor: Marcelo Montecinos C. 149
  • 150. Taller Programación III Java Arquitectura JDBC Arquitectura normal Puente JDBC-ODBC Aplicaciones Java Aplicaciones Java JDBC API JDBC API Adm. de controladores JDBC Adm. de controladores JDBC Puente JDBC/ODBC Controlador Controlador JDBC JDBC Adm. de controladoresODBC C. ODBC C. ODBC DB DB Profesor: Marcelo Montecinos C. DB DB 150
  • 151. Taller Programación III Java Primer ejemplo básico Connection con = DriverManager.getConnection ( quot;jdbc:odbc:nombrequot;, quot;loginquot;, quot;passwordquot;); Statement stmt = con.createStatement(); ResultSet rs = stmt.executeQuery(quot;SELECT a, b, c FROM Table1quot;); while (rs.next()) { int x = rs.getInt(quot;aquot;); String s = rs.getString(quot;bquot;); float f = rs.getFloat(quot;cquot;); } JDBC usa una URL para especificar la base de datos. Profesor: Marcelo Montecinos C. 151
  • 152. Taller Programación III Java ...Primer ejemplo básico Ejemplos de URL: jdbc:mysql://myserver:4444/db1 jdbc:oracle://oraserver jdbc:odbc:mydatabase Profesor: Marcelo Montecinos C. 152
  • 153. Taller Programación III Java JDBC vs. ODBC Se puede usar ODBC desde Java, pero el puente JDBC-ODBC ayuda bastante. ODBC tiene una interfaz tipo C rompiendo el esquema de seguridad, robustez e implementación de Java. ODBC mezcla funciones simple y complejas. Los controladores de ODBC deben ser instalados en cada cliente. Profesor: Marcelo Montecinos C. 153
  • 154. Taller Programación III Java ...JDBC vs. ODBC JDBC es una interfaz natural en Java. Profesor: Marcelo Montecinos C. 154
  • 155. Taller Programación III Java Modelos de acceso a BD Aplicación De 2 capas Java Cliente La aplicación “habla” directamente con la base de datos. JDBC Controlador JDBC se comunica con Protocolo el sistema específico que maneja la base de datos. BD Servidor La base de datos puede estar en DBMS BD otra máquina, con lo que el cliente se comunica por red. Esta es la configuración llamada cliente/servidor. Profesor: Marcelo Montecinos C. 155