You are on page 1of 28

Semana 2

Semana I

Ejercicio
Cree un proyecto llamado ejercicio_fecha, en el cree un paquete llamado paquetecalculo, luego cree una Java Class (Clase Java) llamada Calculadora. En la Clase declare una variable int llamada opcion, valor1 y valor2 (todos privados), adems en el constructor inicialice las variables con el valor 0. Cree un mtodo pblico llamado menuMantenedor el cual despliegue el men de opciones y permita digitar la opcin: MENU OPERACIONES: Sumar. Restar. Multiplicar. Dividir. Digitar opcin: Una vez elegida la opcin digite los valores numricos y posteriormente llame al mtodo correspondiente. As deben existir los mtodos: getSumaValores(int x, int y) getRestaValores(int x, int y) getMultiplicacionValores(int x, int y) getDivisionValores(int x, int y) imprimirResultado(int x, String o) Todos deben ser privados y recibir 2 parametros adems de retornar el resultado, as el resultado debe ser impreso en un mtodo llamado imprimirResultado, el cual debe recibir la cifra y la operacin (un int y un String). Ejemplo: El resultado de la Suma es 345 Cree una Java Main Class llamada Principal en el cual se cree un objeto llamado m y permita llamar al mtodo menuMantenedor.

Esteban Valenzuela

Arreglos.
Un arreglo es un grupo de variables de un mismo tipo, las cuales son referenciados con un mismo nombre, los arreglos existen en ms de una dimensin, siendo los ms comunes los arreglos de una dimensin (o slo arreglos) y los de dos dimensiones (matrices).

Semana I

Arreglos de una dimensin


Los arreglos de una dimensin, permiten almacenar una cantidad N de variables de un tipo, la declaracin general de un arreglo es la siguiente: Tipo identificador [ ];
Por ejemplo:

int mes[];

Semana I

Arreglos de una dimensin

Para obtener un arreglo de tamao n, se debe ejecutar la siguiente sintaxis. Declaracin = new tipo[tamao]; Por ejemplo:

int mes[]=new int[12];

Semana I

Arreglos de una dimensin


Otra forma de inicializar los arreglos es la siguiente:

int mes[]={1,2,3,4,5,6,7,8,9,10,11,12};

Semana I

Arreglos de una dimensin.


Para acceder al valor de una posicin del arreglo se debe referenciar el ndice de la posicin deseada. Por ejemplo:

int a=mes[8];

Semana I

Arreglos de una dimensin.


Para modificar el valor de una posicin del arreglo se debe referenciar el ndice de la posicin deseada y asignar el valor. Por ejemplo:

mes[3]=88;

Semana I

Arreglos de dos dimensiones


Los arreglos multidimensionales son en realidad arreglos que contienen otros arreglos, es muy comn asociar un arreglo multidimensional con una matriz, sin embargo las matrices son slo una posibilidad dentro de la enorme cantidad de combinaciones que permite trabajar con arreglos de arreglos. Por ejemplo:

int dosDimensiones[][]=new int[5][4];

Semana I

Arreglos de dos dimensiones.


Para asignar el valor a un arreglo de dos dimensiones es necesario definir cada uno de los ndices. Por ejemplo:

dosDimensiones[3][5]=10;
Lo mismo ocurre para leer el valor de una arreglo de dos dimensiones.

Semana I

10

Arreglos de arreglos
Es muy usual que cuando se trabaja con arreglos de dos dimensiones, muchos asociamos inmediatamente la estructura con una forma rectangular, si vamos ms all, descubriremos que en java tambin pueden declararse arreglos multidimensionales de tres dimensiones de la siguiente forma:

int numeros[][][]=new int [4][5][6];

Semana I

11

Arreglos de arreglos
Por lo tanto el ejemplo anterior queda de la siguiente forma:

Semana I

12

Arreglos dentados.
Este tipo de arreglos no es muy comn de utilizar y consiste en un arreglo de arreglos, donde cada uno de los arreglos contenidos no tiene el mismo tamao. El siguiente cdigo crea un arreglo dentando de 2 filas donde la primera fila contiene 2 columnas y la segunda 3.

int dentado[][]=new int[2][]; dentado[0]=new int[2]; dentado[1]=new int[3];

Semana I

13

Manejo de Arreglos.
El manejo de arreglos en Java se facilita utilizando la clase Arrays que se encuentra dentro del package java.utils

Semana I

14

Manejo de Arreglos.
Para llenar un arreglo con un valor especfico se usa el mtodo fill de la siguiente forma:

El cdigo anterior llena las 5 posiciones del arreglo con valores 7.

Semana I

15

Manejo de Arreglos.
Otro mtodo til es el de ordenamiento, para esto se ocupa el mtodo sort:

Si te fijas en el ejemplo anterior, el mtodo sort ordena los valores del arreglo de forma ascendente.

Semana I

16

Manejo de Arreglos.
Otro mtodo til es el de bsqueda dentro de un arreglo, para esto ocupamos el mtodo binarySearch el cual realiza una bsqueda binaria en los valores, para que la bsqueda sea eficiente se sugiere que primero se ordenen los datos. El resultado de la bsqueda es la posicin en dnde se encuentra el elemento que se busca.

Semana I

17

Manejo de Arreglos.
Si necesitas comparar 2 arreglos lo puedes hacer ocupando el mtodo equals. El mtodo devuelve un valor verdadero cuando los dos arreglos son exactamente iguales.

La salida del cdigo anterior imprime el valor Son iguales.

Semana I

18

Manejo de Arreglos.
Para poder copiar dos arreglos, lo puedes hacer usando el mtodo copyOf, con el cual se copia el contenido de un arreglo dentro de otro.

Semana I

19

Manejo de Arreglos.
Tambin puedes copiar parte de un arreglo a otro ocupando el mtodo copyOfRange. Este mtodo te permite definir la posicin de inicio y de trmino para los elementos que vas a copiar desde un arreglo hacia otro.

Semana I

20

ArrayList.
Asignacin dinmica. Tamao desconocido al declarar. No se puede utilizar con datos primitivos.

Semana I

21

ArrayList.
Los ArrayList permiten trabajar con un tipo definido.

Semana I

22

ArrayList.
Para agregar elementos a una lista, se utiliza el mtodo sobre cargado add().

Observa que el mtodo add, recibe como parmetro una cadena (String), esto se debe a que el tipo de datos que la lista recibe se ajusta al tipo especificado en su declaracin.

Semana I

23

ArrayList.

Ejemplo de implementacin y uso de un ArrayList.

Semana I

24

ArrayList.

Recorrer un ArrayList utilizando un ciclo for.

Semana I

25

ArrayList.

Recorrer un ArrayList utilizando la estructura for de alto nivel.

Semana I

26

Semana I

27

Semana I

28

You might also like