Sie sind auf Seite 1von 28

Manejo de Arreglos y Cadenas

ISC. Cynthia Bernabe Pacheco

El Principal Problema: Crear muchas Variables del mismo Tipo.

ISC. Cynthia Bernabe Pacheco

La Solucin: El manejo de Arreglos


vUn Arreglo es una secuencia de datos del mismo tipo. v Los datos se llaman Elementos del arreglo y se enumeran 0,1,2. vEstos nmeros localizan al elemento dentro d el arreglo y se denominan ndices. v En java, los ndices del arreglo empiezan con 0 y terminan con el tamao del arreglo -1.
ISC. Cynthia Bernabe Pacheco

Matrices, Arreglos(arrays) o vectores


v Son las formas de registrar conjuntos de valores todos del mismo tipo. v Es una estructura homognea, compuesta por varios elementos, todos del mismo tipo y almacenados consecutivamente en memoria. v Es un objeto en el que se puede almacenar un conjunto de datos del mismo tipo. v Es una coleccin de posiciones de almacenamiento de datos, donde cada una tiene el mismo tipo y el mismo nombre Cada posicin de almacenamiento en un arreglo es llamada elemento del arreglo.
ISC. Cynthia Bernabe Pacheco

Manejo de Arreglos
v Si el arreglo tiene n elementos, se denotan como
a[0],a[1], a[2]a[n-1].
vLas variables son como carpetas individuales y un arreglo es como una sola carpeta con muchos compartimentos. v Los elementos del arreglo son guardados en posiciones secuenciales en memoria.

ISC. Cynthia Bernabe Pacheco

Declaracin de un arreglo
v La sintaxis de declaracin de arreglos en Java es: - Tipo [ ] identificador; - Tipo identificador [ ]; v Ejemplos: char cad[ ] , p; int [ ] v, w; double [ ] m, t [ ] ,x; v En un Arreglo no se permite indicar el numero de elementos asi: int nmeros [12] ; // es Errneo
ISC. Cynthia Bernabe Pacheco

Definir Arreglo de nmero de elementos


v Sintaxis para definir arreglo de un numero determinado de elementos: - Tipo nombreArreglo [ ]= new tipo [numElem]; - Tipo nombreArreglo [ ]; nombreArreglo =new tipo[numElem]; vEjemplo: float notas = new float[26]; Int [ ] a; a = new int [10];
ISC. Cynthia Bernabe Pacheco

Tamao del Arreglo


v Java considera cada arreglo como un objeto
vEl nmero de elementos de un arreglo se conoce accediendo al campo length. vEjemplo: double [ ] v = new double [15]; System.out.print(v.length); // escribe 15 v El campo length esta protegido no se puede modificar.
ISC. Cynthia Bernabe Pacheco

Inicializacin de Arreglos
v Se deben asignar valores a los arreglos antes de utilizarlos por defecto se inicializan con 0. -precio[0]=10; precio[1]=20; precio[2]=30; -int numeros [ ]={10,20,30,40,50}; -char c[ ]={L,u,i,s}: -FINAL int ENE=31,FEB=28,MAR=31,ABR=30; -int meses []={ENE,FEB,MAR,ABR}; -for (int i=0, i<numeros.length;i++) numeros[i]=i;
ISC. Cynthia Bernabe Pacheco

Acceso a los elementos del arreglo


vEl acceso a los elementos de un arreglo se realiza utilizando la expresion: nom_arreglo[indice]; v Si se intenta acceder a un elemento con un subindice menor que cero o mayor que el numero de lementos de la matriz, java lanzara la excepcin: ArrayIndexOutOfBoundsException

ISC. Cynthia Bernabe Pacheco

Acceso a los elementos del arreglo

ISC. Cynthia Bernabe Pacheco

Ejercicios que deber correrse desde la lnea de comando

ISC. Cynthia Bernabe Pacheco

Recorrido de un Arreglo con For:each

ISC. Cynthia Bernabe Pacheco

Recorrido de un Arreglo con For:each

ISC. Cynthia Bernabe Pacheco

Tipos de Arreglos
Arreglo unidimensional: Un arreglo que tiene un solo subndice. Arreglo bidimensional: Un arreglo que tiene dos ndices. Matrices Arreglos multidimensional: Un arreglo que tiene mas de un ndice.

Arreglos Bidimensionales
Este tipo de arreglos al igual que los anteriores es un tipo de dato estructurado, finito ordenado y homogneo. El acceso a ellos tambin es en forma directa por medio de un par de ndices. La representacin en memoria se realiza de dos formas: almacenamiento por columnas o por renglones.

Arreglos Bidimensionales
Los arreglos bidimensionales se usan para representar datos que pueden verse como una tabla con filas y columnas. La primera dimensin del arreglo representa las columnas, cada elemento contiene un valor y cada dimensin representa una relacin Tabla[0][0]
Tabla[0][1] Tabla[1][0] Tabla[1][1] Tabla[2][0] Tabla[2][1] Tabla[3][0] Tabla[3][1]

Declaracin de Arreglos Bidimensional


Para Declarar un array se utilizan corchetes para indicar que se trata de una array y no de una simple variable del tipo especificado.
Sintaxis: <tipo datoElemento> <nombreArreglo>[][]; <tipo datoElemento> [][] <nombreArreglo>; v Ejemplo: char pantalla[][]; Int [][] sumatoria;

Creacin de Arreglos Bidimensional


Los arreglos Bidimensionales se crean con el operador new. Sintaxis: Matriz= new tipo[filas][columnas]; vEjemplo. int [][] temperaturas = new int [13][45];

Uso de Arreglos Bidimensional


Para acceder a los elementos de un array, utilizamos ndices (para indicar la posicin del elemento dentro del array). Matriz [indice1][indice2]; Una matriz, en realidad es un vector de vectores en java, el ndice de la primera componente de un vector es siempre 0, por lo que matriz [0][0] ser el primer elemento de la matriz.

Obtencin del tamao de un Arreglos Bidimensional


El tamao del array puede obtenerse utilizando la propiedad array.length; matriz.length nos da el numero de filas matriz[0].length nos da el numero de columnas. Por lo tanto, el ultimo elemento de la matriz es: Matriz[matriz.length-1][matriz[0].lentgh-1];

Obtencin del tamao de un Arreglos Bidimensional


float ventas[][]={{0.,0.,0.},{1.0,1.0},{-1.0}}; System.out.print(ventas.length); System.out.print(ventas[0].length); System.out.print(ventas[1].length); System.out.print(ventas[2].length); //escribe 3 //escribe 3 //escribe 2 //escribe 1

Inicializacin en la declaracin
Podemos asignarle un valor inicial a los elementos de un array en la propia declaracin. Ejemplo: int vector [ ][ ]= { { 1,2,3} , [4,5,6} }; El compilador deduce automticamente las dimensiones del array.

Inicializacin en la declaracin
double tb[][]={{1.5,-2.5}r {5.0,-0.0,1.5}}; int []a={l,3,5}, b={2,4,6,8,10}; int mtb[][] ={a, b}; double [][]gr=new double[3][]; gr[0]=new double[3]; gr[l]=new double[6]; gr[2]=new double[5]

Acceso a los elementos de un Array bidimensional


nombreArreglo[rengln][columna] = valor; variable = nombreArreglo[rengln][columna]; Ejemplos: Tabla[2][3]=4.5; Resistencias[2][4]=50; Ventas = Tabla[1] [1]; Dia = Semana[3][6];

Acceso a los elementos de un Array bidimensional


for(ren=0; ren < Matriz.length; ++ren){ for(col=0; col < Matriz [ren] . length; ++col){ System.out.println(Matriz[ren][col]); } }

Conceptos Extras
La biblioteca de clases de Java incluye una clase auxiliar llamada java.util.Arrays que incluye como mtodos algunas de las tareas que se realizan ms a menudo con vectores: Arrays.sort(v) ordena los elementos del vector. Arrays.equals(v1,v2) comprueba si dos vectores son iguales. Arrays.fill(v,val) rellena el vector v con el valor val. Arrays.toString(v) devuelve una cadena que representa el contenido del vector. Arrays.binarySearch(v, k) busca el valor k dentro del vector v (que previamente ha de estar ordenado).

Arreglos de mas de dos dimensiones


Java proporciona la posibilidad de almacenar varias dimensiones, por ejemplo un arreglo de tres dimensiones Un arreglo tridimensional: int volumen[ ][ ][ ]=new[181] [178][190];

Das könnte Ihnen auch gefallen