Está en la página 1de 6

Herramientas de Programación Aplicada II

V. ARREGLOS

5.1. Definición

Un array (matriz, vector o lista) es un tipo especial de objeto compuesto por una colección de
elementos del mismo tipo de datos que se almacenan consecutivamente en memoria.

Un array tiene un nombre o identificador, un índice que es un número entero encerrado entre
corchetes, un tamaño o longitud, que es el número de elementos que se pueden almacenar en el
array cuando se le asigna espacio en memoria. Es importante tener presente que un array se
debe declarar, crear, iniciar y luego utilizar.

Nombre Indice

Lista [0]
Lista [1]
Lista [2]
...

lista [0] lista[1] lista[3] ...

Los arrays pueden ser unidimensionales (listas o vector) y multidimensionales (tablas o


matrices) que pueden tener dos o más dimensiones.

5.2. Declaración y manejo de arreglos

Declaración: tipo_de_dato [] nombre_array; //es el implementado por Java


tipo_de_dato nombre_array [];

Ejemplo: double [] A; ó double A[];

Nota: En una declaración de array no se especifica el tamaño del mismo. Esto se


realiza cuando se crea el array.

Creación: después de haber declarado un array puede proceder a crearlo, utilizando el


operador new. Cabe mencionar que nombre_array es el nombre del array declarado
previamente.

nombre_array = new tipo_de_dato [tamaño];

Ejemplo: A = new double [8];

45 Prof. Emérita Alvarado M.Sc.


Herramientas de Programación Aplicada II

Declaración y Creación: se puede combinar la declaración y creación de un array en


una misma sentencia:

tipo_de_dato [] nombre_array = new tipo_de_dato [tamaño];


tipo_de_dato nombre_array [] = new tipo_de_dato [tamaño];

Ejemplo: double [] A = new double [8]; ó double A [] = new double [8];

Nota: una vez creado un array su tamaño no puede ser modificado.

Inicialización y Utilización: para inicializar o utilizar un array se debe hacer referencia a la


posición que nos interese, a través del nombre_array [indice].

Ejemplo: si nos interesa inicializar la primera posición del array A con un valor de 2.5 sería:
A [0] = 2.5; ó A[i] = 2.5

Mientras, si lo que deseamos es accesar al elemento contenido en la misma posición:


N = A [0]; ó N = A[i];

Nota: se debe tener presente que en Java los arrays inician en la posición cero (0) y terminan
en tamaño – 1.

Calcular el tamaño del array


El tamaño de un array se puede obtener con la sentencia o comando length.

Ejemplos: int [] cuenta = new int [100];


int i;
for (i = 0; i < cuenta.length; i++)
cuenta [i] = 0;

5.2.1. Tipos de Arreglos Estáticos


5.2.1.1. Unidimensionales
import java.io.*;
public class vectorestatico
{
static String [] nombre = new String [5];

public static void cargar()


{
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);
System.out.println ("Introduzca los 5 Nombres");
try
{
for (int i = 0; i < 5; i++)
nombre[i] = br.readLine();
}

46 Prof. Emérita Alvarado M.Sc.


Herramientas de Programación Aplicada II

catch (IOException e)
{}
}

public static void VisualizarVector()


{
System.out.println("Los nombre tecleados fueron:");
for (int i = 0; i < 5; i++)
System.out.println (nombre[i]);
}
public static void main (String [] args)
{
vectorestatico ve = new vectorestatico();

ve.cargar();
ve.VisualizarVector();
}
}

5.2.1.2. Bidimensionales

import java.io.*;
public class matrizestatica
{
static String [][] nombre = new String [2][2];

public static void cargar()


{
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);

System.out.println ("Introduzca los 5 Nombres");

try
{
for (int i = 0; i < 2; i++)
for (int j = 0; j < 2; j++)
nombre[i][j] = br.readLine();
}
catch (IOException e)
{}
}

47 Prof. Emérita Alvarado M.Sc.


Herramientas de Programación Aplicada II

public static void VisualizarVector()


{
System.out.println("Los nombre tecleados fueron:");
for (int i = 0; i < 2; i++)
for (int j = 0; j < 2; j++)
System.out.println (nombre[i][j]);
}

public static void main (String [] args)


{
matrizestatica me = new matrizestatica();

cargar();
VisualizarVector();
}
}

5.2.2. Tipos de Arreglos Dinámicos


5.2.2.1. Unidimensionales

import java.io.*;
public class vectordinamico
{
static String [] nombre;
static int n = 0;

public static void cargar()


{
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);

System.out.print ("Cuantos nombres va a teclear?");


try
{
n = Integer.parseInt(br.readLine());

nombre = new String [n];

System.out.println ("Introduzca los " + n + " Nombres");

for (int i = 0; i < n; i++)


nombre[i] = br.readLine();
}
catch (IOException e)
{}
}
48 Prof. Emérita Alvarado M.Sc.
Herramientas de Programación Aplicada II

public static void VisualizarVector()


{
System.out.println("Los nombre tecleados fueron:");
for (int i = 0; i < n; i++)
System.out.println (nombre[i]);
}

public static void main (String [] args)


{
Vectordinamico vd = new vectordinamico();

vd.cargar();
vd.VisualizarVector();
}
}

5.2.2.2. Bidimensionales

import java.io.*;
public class matrizdinamica
{
static String [][] nombre;
static int f = 0, c = 0 ;

public static void cargar()


{ InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);

System.out.println ("Teclee la dimension de su matriz de nombres? ");


try
{ System.out.print ("Filas = ");
f = Integer.parseInt(br.readLine());

System.out.print ("Columnas = ");


c = Integer.parseInt(br.readLine());

nombre = new String [f][c];

System.out.println ("Introduzca los " + f*c + " Nombres");


for (int i = 0; i < f; i++)
for (int j = 0; j < c; j++)
nombre[i][j] = br.readLine();
}
catch (IOException e)
{}
}

49 Prof. Emérita Alvarado M.Sc.


Herramientas de Programación Aplicada II

public static void VisualizarVector()


{
System.out.println("Los nombre tecleados fueron:");
for (int i = 0; i < f; i++)
for (int j = 0; j < c; j++)
System.out.println (nombre[i][j]);
}

public static void main (String [] args)


{
matrizdinamica md= new matrizdinamica();

md.cargar();
md.VisualizarVector();
}
}

50 Prof. Emérita Alvarado M.Sc.

También podría gustarte