Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Arreglos Unidimensionales
Arreglos Unidimensionales
Introduccin:
Un arreglo es una coleccin de objetos numerados del mismo tipo, en donde cada variable o celda en el arreglo tiene un ndice. Las celdas estn numeradas del 0 al N-1, donde N es el nmero de celdas del arreglo es decir su capacidad. Los ndices de un arreglo en Java deben estar dentro de los lmites, 0 N-1, de lo contrario se generar un error durante la ejecucin.
Java implementa los arreglos como objetos que pueden ser tratados como cualquier otro objeto. Para utilizar un arreglo en Java:
1. 2. 3. 4.
Declare una variable para que contenga el arreglo Cree un nuevo arreglo de objeto y asgnelo a la variable de arreglo Almacene informacin en ese arreglo Realice operaciones de almacenamiento y recuperacin con los elementos del arreglo
Declaracin:
Se agrega un par de corchetes vacos
[ ]
O bien:
Ejemplos:
String [ ] nombreJugadores = new String [10]; int [ ] temps = new int [99];
Todas las posiciones se inicializan automticamente (0 para arreglos numricos, false para booleanos, \0 para arreglos de carcter y null para objetos) Tambin se puede crear e inicializar un arreglo al mismo tiempo. Encierre los elementos del arreglo entre llaves, separndolos con comas:
String [ ] chiles = { jalapeno, de rbol, serrano, habanero};
Al crear elementos con valores iniciales, el arreglo es del mismo tamao que la cantidad de elementos que ha incluido en las llaves. Ejemplo:
class ArregloNombres { String[] nombres = { "Dennis", "Grace", "Bjarne", "James"}; String[] apellidos = new String[nombres.length]; void imprime() { int i = 0; System.out.println(nombres[i] i++; System.out.println(nombres[i] i++; System.out.println(nombres[i] i++; System.out.println(nombres[i]
+ " " + apellidos[i]); + " " + apellidos[i]); + " " + apellidos[i]); + " " + apellidos[i]);
} public static void main (String arguments[]) { ArregloNombres a = new ArregloNombres(); a.imprime(); System.out.println("-----"); a.apellidos[0] = "Ritchie"; a.apellidos[1] = "Hopper"; a.apellidos[2] = "Stroustrup"; a.apellidos[3] = "Gosling"; a.imprime();
} }
El tamao de un arreglo se almacena en la variable length, que puede ser accesada a travs del operador . y el nombre del arreglo:
nombreArreglo.length
Modificar la clase anterior para que tenga una mejor estructura de control. Investigar quines son las personas que aparecen mencionadas.
Ejemplo:
package aplicacion; /** * Write a description of class AplicacionArreglos here. * Recibe por teclado 20 numeros enteros los suma y calcula el promedio * @author (Blanca A. Reyes Luna) * @version (1.0 4/oct/2010) */
import java.util.Scanner; public class SumaArreglo { public static void main(String [] args){ //int[] arreglo; int[] arreglo = new int[20]; int i; double suma = 0, promedio; Scanner entrada = new Scanner(System.in);
//arreglo = new int[10]; // captura datos en el arreglo y los suma for (i=0; i<=19; ++i){ System.out.print("arreglo["+i+" ]= "); arreglo[i] = entrada.nextInt(); System.out.print("\n"); suma += arreglo[i]; } // calcula el promedio promedio = suma/20; // imprime el arreglo for (i=0; i<=19; ++i){ System.out.print(" " + arreglo[i]); } // imprime el promedio System.out.println("\n El promedio es " + promedio);
// calcular la desviacion estandar respecto a la media for (i =0; i<=19; ++i){ double desviacion = arreglo[i] - promedio; System.out.println("\n El numero es " + arreglo[i]+ "la desviacion es "+desviacion); } } }
Ejemplo:
package aplicacion; /** * Write a description of class AplicacionArreglos here. * Recibe 10 numeros enteros en en arreglo y determina cual es el * mayor, el menor y en que posicion se encuentran * @author (your name) * @version (a version number or a date) */ import java.util.Scanner; public class AplicacionArreglos { public static void main(String [] args){ //int[] arreglo; int[] arreglo = new int[10];
} menor = arreglo[0]; posicionMenor = 0; mayor = arreglo[0]; posicionMayor = 0; for (i=0; i<=9; ++i){ if (menor > arreglo[i]){ menor = arreglo[i]; posicionMenor = i; } if (mayor < arreglo[i]){ mayor = arreglo[i]; posicionMayor = i; } } System.out.println("El numero menor es " + menor +" y se encuentra en la posicion " + posicionMenor);
System.out.println("El numero mayor es " + mayor +" y se encuentra en la posicion " + posicionMayor); } }