Upload
eduardo-rosas-garcia
View
1.335
Download
0
Embed Size (px)
Citation preview
Ing. Heber Gómez HurtadoIng. Heber Gómez Hurtado 11
TALLER DE PROGRAMACION ITALLER DE PROGRAMACION I
Tema: ArreglosTema: Arreglos
Ing. Heber Gómez HurtadoIng. Heber Gómez Hurtado 22
ArreglosArreglos
Sirven para almacenar varios datos Sirven para almacenar varios datos del mismo tipo, por ejemplo varios del mismo tipo, por ejemplo varios números enteros, varios objetos de la números enteros, varios objetos de la clase Empleado, etc.clase Empleado, etc.
Los arreglos son de tamaño fijo, una Los arreglos son de tamaño fijo, una vez creados.vez creados.
Ing. Heber Gómez HurtadoIng. Heber Gómez Hurtado 33
Creación de ArreglosCreación de Arreglos Los arrays son objetosLos arrays son objetos, y por tanto deben , y por tanto deben
instanciarse con instanciarse con newnew . . El tamaño del array se define cuando se El tamaño del array se define cuando se
instancia:instancia:• TipoDatos nombrearreglo[];TipoDatos nombrearreglo[];• TipoDatos nombrearreglo[] = new TipoDatos[Tamaño];TipoDatos nombrearreglo[] = new TipoDatos[Tamaño];
Por ejemplo:Por ejemplo:int n[]; /*define "n" como un objeto arreglo de enteros */int n[]; /*define "n" como un objeto arreglo de enteros */n=new int[5]; /* crea (instancia) el arreglo, con capacidad n=new int[5]; /* crea (instancia) el arreglo, con capacidad para 5 enteros */para 5 enteros */int [] x, y; // define 2 arreglosint [] x, y; // define 2 arreglosx= new int[5];x= new int[5];y= new int[3];y= new int[3];
Ing. Heber Gómez HurtadoIng. Heber Gómez Hurtado 44
Arreglos MultidimensionalesArreglos Multidimensionales
Se pueden crear arreglos de más de Se pueden crear arreglos de más de 1 dimensión,1 dimensión,
int datos[][]= new int[8][8];int datos[][]= new int[8][8]; Un arreglo bidimensional es un Un arreglo bidimensional es un
arreglo de arreglos, cada arreglo de arreglos, cada componente puede ser de distinto componente puede ser de distinto tamaño.tamaño.
Ing. Heber Gómez HurtadoIng. Heber Gómez Hurtado 55
Inicialización de un ArregloInicialización de un Arreglo
Se puede inicializar un arreglo cuando se Se puede inicializar un arreglo cuando se declaradeclara• crea un array de 10 enteroscrea un array de 10 enteros
int datos[ ] = {0,1,2,3,4,5,6,7,8,9};int datos[ ] = {0,1,2,3,4,5,6,7,8,9};• array bidimensional, la fila 0 es 1,2; la fila 1 es array bidimensional, la fila 0 es 1,2; la fila 1 es
3,4,53,4,5
int b[][] = { {1,2}, {3,4,5} };int b[][] = { {1,2}, {3,4,5} }; Debe recordarse que un arreglo es un Debe recordarse que un arreglo es un
objeto, y por tanto una referencia a dónde objeto, y por tanto una referencia a dónde se encuentran los valores.se encuentran los valores.
Ing. Heber Gómez HurtadoIng. Heber Gómez Hurtado 66
Uso de Arreglos en métodosUso de Arreglos en métodos
Un array puede Un array puede • Ser pasado como parámetro a un métodoSer pasado como parámetro a un método
public static void main (String arg[])public static void main (String arg[])
El paso es por referencia, por lo que si se El paso es por referencia, por lo que si se modifica estas modificaciones permanecen modifica estas modificaciones permanecen en el objeto utilizado al llamar al método.en el objeto utilizado al llamar al método.
• Ser devuelto como resultado de la ejecución de Ser devuelto como resultado de la ejecución de un métodoun método
NombreClase [] metodo();NombreClase [] metodo();
Ing. Heber Gómez HurtadoIng. Heber Gómez Hurtado 77
Ejemplo 1Ejemplo 1import java.io.*;import java.io.*;public class Vector{public class Vector{public static void main (String arg[])public static void main (String arg[]){{ //Vector de 4 elementos//Vector de 4 elementosBufferedReader br = new BufferedReader(new BufferedReader br = new BufferedReader(new
InputStreamReader(System.in)); InputStreamReader(System.in)); int n[]= new int[4];int n[]= new int[4];try{try{for(int i=0; i<n.length; i++) for(int i=0; i<n.length; i++) {{ System.out.println("Numero-->") ; System.out.println("Numero-->") ; n[i] = Integer.parseInt(br.readLine()); n[i] = Integer.parseInt(br.readLine()); }}}}catch(Exception e)catch(Exception e){ System.out.println(e); }{ System.out.println(e); }}}
Ing. Heber Gómez HurtadoIng. Heber Gómez Hurtado 88
Ejemplo 2Ejemplo 2import java.io.*;import java.io.*;public class Matriz{public class Matriz{public static void main (String arg[])public static void main (String arg[]){{ //Matriz de 4 * 4//Matriz de 4 * 4BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int m[][]= new int[4][4];int m[][]= new int[4][4];try{try{for(int i=0; i<5; i++) for(int i=0; i<5; i++) {{ for(int j=0; j<5;j++) for(int j=0; j<5;j++) {{ System.out.println("Numero-->") ; System.out.println("Numero-->") ; n[i][j] = Integer.parseInt(br.readLine()); n[i][j] = Integer.parseInt(br.readLine()); }}}}catch(Exception e)catch(Exception e){ System.out.println(e); }{ System.out.println(e); }}}