Arrays en Java


Un array es una de las estructuras de datos más fundamentales de cualquier lenguaje de programación. En esta práctica se va a programar aplicaciones que utilizan arrays, añadiendo y eliminando elementos en el array y desde el array.


Ejercicios


Ejercicio 1: Construir y ejecutar programas que usan array de int

En este ejercicio, se desarrolla una aplicación simple Java que usa un array de int.

  1. Construir y ejecutar un programa Java que usa un array unidimensional de int
  2. Construir y ejecutar un programa Java que usa un array bidimensional de int
  3. Construir y ejecutar un programa Java que calcula el mayor número

(1.1) Construir y ejecutar un programa Java que usa un array unidimensional de int

1. Crear un proyecto NetBeans


Figura-1.10: Create a new NetBeans project
2. Modifcar el código generado JavaArray.java.
public class JavaArray {   
   
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {

        // Declare and create int array whose size is 10
        int[] ages = new int[10];
       
        // Display the value of each entry in the array
        for( int i=0; i<ages.length; i++ ){
            System.out.print( ages[i] );
        }
    }
   
}
Código-1.11: JavaArray.java modificado


Figura-1.12

3. Construir y ejecutar el programa

0 0 0 0 0 0 0 0 0 0
Figura-1.13: Resultado


4. Modificar, como ejercicio adicional, JavaArray.java como sigue,


(1.2) Construir y ejecutar un programa Java que usa un array bi-dimensional de int

1. Crear un proyecto NetBeans

2. Modificar el código JavaTwoDimensionArray.java.
public class JavaTwoDimensionArray {
   
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {

        // Declare and create two dimensional int array whose size is 10 by 5
        int[][] ages = new int[10][5];
       
        // Display the number of rows and columns
        System.out.println("ages.length = " + ages.length);
        System.out.println("ages[1].length = " + ages[1].length);
       
        // Display the value of each entry in the array
        for( int i=0; i<ages.length; i++ ){
             System.out.println("\nStarting row " + i);
            for( int j=0; j<ages[i].length; j++ ){
                ages[i][j] = i * j;
                System.out.print( ages[i][j] + " " );
            }
        }
    } 
}
Código-1.11: JavaTwoDimensionArray.java modificado

3. Construir y ejecutar el programa

ages.length = 10
ages[1].length = 5

Starting row 0
0 0 0 0 0
Starting row 1
0 1 2 3 4
Starting row 2
0 2 4 6 8
Starting row 3
0 3 6 9 12
Starting row 4
0 4 8 12 16
Starting row 5
0 5 10 15 20
Starting row 6
0 6 12 18 24
Starting row 7
0 7 14 21 28
Starting row 8
0 8 16 24 32
Starting row 9
0 9 18 27 36
Figura-1.12: Resultado

4. (Ejercicio) Crear un proyecto NetBeans como sigue: 

(1.3) Construir y ejecutar un prorama Java para hallar el mayor número

1. Crear un proyecto NetBeans

2. Modificar GreatestNumber.java.
import javax.swing.JOptionPane;

public class GreatestNumber {
   
    public static void main(String[] args) {
        int[] num = new int[10];
        int counter;
        int max = 0;
        int totalnumber = 3;
       
        // Prompt a user to enter numbers
        for(counter = 0; counter < totalnumber; counter++){
           
            num[counter] = Integer.parseInt
                    (JOptionPane.showInputDialog("Enter numbers until " + totalnumber + " numbers are entered"));
           
            // Compute the greatest number up to this point
            if((counter == 0)||(num[counter] > max))
                max = num[counter];
        }
       
        // Display the greatest number.
        JOptionPane.showMessageDialog(null,"The number with the greatest value is " + max);
    }
   
}
Código-1.11: GreatestNumber.java modificado

3. Construir y ejecutar el programa

4. (Ejercicio) Modifcar MyGreatestNumberProject como sigue:

Resumen

En este Ejercicio, se ha utilizado arrays en Java.

                                                                                                                        Volver al inicio



Ejercicio 2: Construir y ejecutar programas Java que usan array de String

En este ejercicio, se va a desarrollar aplicaciones simples en Java que usan array de String.

  1. Construir y ejecutar un programa Java que usa un array unidimensional de String

(2.1) Construir y ejecutar un programa Java

1. Crear un proyecto NetBeans

2. Modificar DaysOfTheWeek.java.
public class DaysOfTheWeek {
    
    public static void main(String[] args) {
       
        // Declare and initialize String array of the days of the week
        String[] days = {"Sunday","Monday","Tuesday","Wednesday",
        "Thursday","Friday","Saturday"};
       
        // Display days of the week using while loop
        System.out.println("Display days of week using while loop");
        int counter = 0;
        while(counter < days.length){
            System.out.println(days[counter]);
            counter++;
        }
       
        // Display days of the week using do-while loop
        System.out.println("Display days of week using do-while loop");
        counter = 0;
        do{
            System.out.println(days[counter]);
            counter++;
        } while(counter < days.length);
       
        // Display days of the week using for loop
        System.out.println("Display days of week using for loop");
        for(counter = 0; counter < days.length; counter++){
            System.out.println(days[counter]);
        }
       
    }
   
}
Código-2.11: DaysOfTheWeek.java modificado

3. Construir y ejecutar el programa


Display days of week using while loop
Sunday
Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
Display days of week using do-while loop
Sunday
Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
Display days of week using for loop
Sunday
Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
Figura-2.12: Resultado


Tarea


1. La tarea consiste en crear el proyecto MyOwnJavaArrayProject como sigue:
Sugerencia: Usar los métodos de la clase String. Como ejemplo, el siguiente código es un fragmento de partición y obtención del nombre más largo entre dos personas.

// Obtiene el promer nombre usando el método split() (no-static)
String[] nameArrayForPerson1 = person1NameInstance.split(" ");
String[] nameArrayForPerson2 = person2NameInstance.split(" ");

// Obtiene la longitud de los nombre usando el método length() (no-static)
int lengthOfFirstNameOfPerson1 = nameArrayForPerson1[0].length();
int lengthOfFirstNameOfPerson2 = nameArrayForPerson2[0].length();

// Compara las longitudes de los nombres entre person1 y person2
if (lengthOfFirstNameOfPerson1 > lengthOfFirstNameOfPerson2){
   System.out.println(nameArrayForPerson1[0] +
                              " tiene el nombre más largo que " +
                              nameArrayForPerson2[0]);
}