Normalmente cuando se trabaja con arrays se suelen realizar operaciones con los datos que están dentro del mismo como pueden ser organizaciones, copias, etc… Para poder hacerlo se programar todo el mecanismo mediante el recorrido del array y la operación específica o bien utilizar una clase especial de java que permite trabajar directamente con este tipo de acciones.
Organización de arrays
public void organizarArrayNumeros() { int[] numeros = {4, 1, 2, 6, 8, 3, 4, 89, 67, 32, 12}; System.out.println("Antes de la organizacion:"); for (int temp : numeros) { System.out.println(temp); } Arrays.sort(numeros); System.out.println("Después de la organizacion:"); for (int temp : numeros) { System.out.println(temp); } }
public void organizarArrayLetras() { String[] palabras = {"lenguaje", "programación", "java", "c", "win"}; System.out.println("Antes de la organizacion:"); for (String temp : palabras) { System.out.println(temp); } Arrays.sort(palabras); System.out.println("Después de la organizacion:"); for (String temp : palabras) { System.out.println(temp); } }
Copia de arrays
Uno de los aspectos negativos que tiene un array es que tiene una longitud fija, la cual no es alterable una vez está creada la colección. La única manera de realizar esta modificación es crear una nueva colección con los datos origen y nuevas posiciones
public void copiarArrays() { int[] numeros = {4, 1, 2, 6, 8, 3, 4, 89, 67, 32, 12}; System.out.println(numeros.length); int[] numerosNuevos = Arrays.copyOf(numeros, 20); System.out.println(numerosNuevos.length); System.out.println(numerosNuevos[19]); }
Comparación de arrays
public void compararArrays() { int[] numeros = {4, 1, 2, 6, 8, 3, 4, 89, 67, 32, 12}; int[] numerosDos = {6, 7, 8, 2, 123, 53, 231, 23}; boolean iguales = Arrays.equals(numeros, numerosDos); System.out.println(iguales); int[] numerosTres = {4, 1, 2, 6, 8, 3, 4, 89, 67, 32, 12}; int[] numerosCuatro = {4, 1, 2, 6, 8, 3, 4, 89, 67, 32, 12}; boolean igualesDos = Arrays.equals(numerosTres, numerosCuatro); System.out.println(igualesDos); }
Clonado de arrays
public void clonadoArrays() { int[] numeros = {4, 1, 2, 6, 8, 3, 4, 89, 67, 32, 12}; int[] numerosNuevos = numeros.clone(); System.out.println(numerosNuevos.length); }
Los códigos completos utilizados en este ejemplo:
public class Organizacion { public void organizarArrayNumeros() { int[] numeros = {4, 1, 2, 6, 8, 3, 4, 89, 67, 32, 12}; System.out.println("Antes de la organizacion:"); for (int temp : numeros) { System.out.println(temp); } Arrays.sort(numeros); System.out.println("Después de la organizacion:"); for (int temp : numeros) { System.out.println(temp); } } public void organizarArrayLetras() { String[] palabras = {"lenguaje", "programación", "java", "c", "win"}; System.out.println("Antes de la organizacion:"); for (String temp : palabras) { System.out.println(temp); } Arrays.sort(palabras); System.out.println("Después de la organizacion:"); for (String temp : palabras) { System.out.println(temp); } } public void copiarArrays() { int[] numeros = {4, 1, 2, 6, 8, 3, 4, 89, 67, 32, 12}; System.out.println(numeros.length); int[] numerosNuevos = Arrays.copyOf(numeros, 20); System.out.println(numerosNuevos.length); System.out.println(numerosNuevos[19]); } public void compararArrays() { int[] numeros = {4, 1, 2, 6, 8, 3, 4, 89, 67, 32, 12}; int[] numerosDos = {6, 7, 8, 2, 123, 53, 231, 23}; boolean iguales = Arrays.equals(numeros, numerosDos); System.out.println(iguales); int[] numerosTres = {4, 1, 2, 6, 8, 3, 4, 89, 67, 32, 12}; int[] numerosCuatro = {4, 1, 2, 6, 8, 3, 4, 89, 67, 32, 12}; boolean igualesDos = Arrays.equals(numerosTres, numerosCuatro); System.out.println(igualesDos); } public void clonadoArrays() { int[] numeros = {4, 1, 2, 6, 8, 3, 4, 89, 67, 32, 12}; int[] numerosNuevos = numeros.clone(); System.out.println(numerosNuevos.length); } public static void main(String[] args) { Organizacion org = new Organizacion(); //org.organizarArrayNumeros(); //org.organizarArrayLetras(); //org.copiarArrays(); //org.compararArrays(); org.clonadoArrays(); } }
Los códigos se pueden descargar desde el repositorio