ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Arreglos Dinamicos


Enviado por   •  16 de Julio de 2012  •  1.922 Palabras (8 Páginas)  •  2.938 Visitas

Página 1 de 8

3.2.5.1.Arreglos

Son asociaciones de varios datos del mismo tipo, por ejemplo un arreglo de cinco datos enteros o una lista de diez nombres, también son llamados arrays.

En Java se pueden declarar arreglos de cualquier tipo:

char s[];

int iArray[];

Incluso se pueden construir arreglos de arreglos:

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

Los límites de los arreglos se comprueban en tiempo de ejecución para evitar desbordamientos y la corrupción de memoria, es decir, se verifica que no se intenten ocupar más espacios de los especificados en la declaración del arreglo.

En Java un arreglo es realmente un objeto, porque tiene definido el operador "[ ]". Tiene una función miembro: length. Se puede utilizar este método para conocer su longitud.

int a[][] = new int[10][3];

a.length; /* 10 */

a[0].length; /* 3 */

Para crear un arreglo en Java hay dos métodos básicos. Crearlo vacío:

int lista[] = new int[50];

o se puede crear el arreglo con sus valores iniciales:

String nombres[] = {

"Juan","Pepe","Pedro","María"

};

Esto que es equivalente a:

String nombres[];

nombres = new String[4];

nombres[0] = new String( "Juan" );

nombres[1] = new String( "Pepe" );

nombres[2] = new String( "Pedro" );

nombres[3] = new String( "María" );

No se pueden crear arreglos estáticos en tiempo de compilación:

int lista[50]; // generará un error en tiempo de compilación

Tampoco se puede llenar un array sin declarar el tamaño con el operador new:

int lista[];

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

lista[i] = i;

Es decir, todos los arrays en Java son estáticos, esto mejora la seguridad en el manejo de memoria. Para convertir un arreglo en el equivalente a los arreglos dinámicos de C++, se usa la clase vector, que permite operaciones de inserción, borrado, etc.

17.1. Concepto.

El arreglo es un tipo estructurado de datos, y representa, en un ambiente de programación,

a las entidades matemáticas denominadas vectores y matrices.

Sin lugar a dudas, es la estructura de datos más empleada por los programadores; y en

algunos lenguajes de programación suele ser la única estructura explícita disponible.

Se entiende por estructura de datos, la acción de agrupar elementos primitivos en cierta

forma. La forma más simple es agrupar componentes de igual tipo y asociarle un número de

orden a cada componente; éste es el caso del arreglo.

Capítulo VI: "Arreglos en Java"

Los arreglos en Java son dinámicos, pero no extensibles, lo cual significa que deben ser creados con el tamaño que tendrán hasta el final de su vida.

Un arreglo se declara de la siguiente forma:

<tipo>[] <nombre>;

O sea, para declarar, por ejemplo, un arreglo de números enteros utilizaremos la siguiente sentencia:

int[] arrInt;

Es importante notar que el arreglo aún no ha sido creado, sino meramente declarado. Para crear el arreglo (reservar su memoria e inicializarlo) deberemos recurrir al operador new:

arrInt = new int[10];

Este comportamiento debe comprenderse de esta forma: en Java todo es un objeto, y los objetos deben ser creados mediante el operador new. El caso de los arreglos no es diferente, el tipo de datos del arreglo (int[] en este caso) es una clase y cada una de sus instancias debe ser creada explícitamente, el tamaño puede pensarse como un parámetro al constructor de la clase.

A partir de este momento podemos utilizar arrInt como un arreglo de cualquier otro lenguaje.

Una de las características que hacen de Java un entorno de programación seguro, y que se relaciona con el manejo de los arreglos es que el lenguaje no permite la indexación de arreglos fuera de rango, o sea, una asignación de este tipo generará una excepción:

ArrInt[25] = 1;

Otra forma de declararlos es la siguiente:

UNIDIMENSIONALES:

tipo nombre_array[]=new tipo[nº];

tipo nombre_array[]={valores};

BIDIMENSIONALES:

tipo nombre_array[][]=new tipo[nº][nº];

tipo nombre_array[][]={valores};

Ejemplo 6.1

Se sabe que la velocidad de un proyectil está dada por la ecuación, en forma vectorial: V= ai+ bj+ ck. Diseñe una aplicación que sea capaz de leer los valores de las constantes a, b y c. y muestre la magnitud y dirección de dicho proyectil.

1 import javax.swing.*;

2 public class Proyectil{

3 public static void main (String args []){

4 String leer;

5 double magnitud, direccion, sum;

6 double vector[]=new double[3];

7 int ban=1;

8 while(ban==1)//miestras hayan datos a procesar

9 {

10 //leemos el valor de las constantes

11 leer=JOptionPane.showInputDialog("Ingrese

...

Descargar como (para miembros actualizados)  txt (13.2 Kb)  
Leer 7 páginas más »
Disponible sólo en Clubensayos.com