<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">import java.util.Scanner;


public class Test {

   // Limpia la pantalla usando lineas en blanco
   public void limpiar() {
      for (int i = 0; i &lt; 30; i++) System.out.println("");
   }

   // Visualiza el menu
   public void visualizaMenu() {
      System.out.println("Menu");
      System.out.println("");
      System.out.println("1) Agregar");
      System.out.println("2) Modificar");
      System.out.println("3) Borrar");
      System.out.println("4) Visualizar todos");
      System.out.println("0) Salir");
   }


   // Arreglo unidimensional ...
   public void arregloUnidimensionalLong() {
      // Arreglo unidimensional
      long[]Arr;
      // Tamano arreglo unidimensional
      int Tam;

      // objeto para trabajar con teclado
      Scanner teclado = new Scanner(System.in);

      // Pregunta sobre el tamaÃ±o del arrglo
      do {
         System.out.println("TamaÃ±o del arreglo? ");
         Tam = teclado.nextInt();
         if(Tam &lt;= 0 || Tam &gt; 10) System.out.println("Error en el tamaÃ±o, rango de 1 a 10");
      } while(Tam &lt;= 0 || Tam &gt; 10);
      Arr = new long[Tam];

      int op = 1, act = 0;
      // Menu
      do {
//         limpiar();
         visualizaMenu();
         System.out.println("");
         System.out.println("Opcion: ");
         op = teclado.nextInt();

         switch(op) {
         // Salir
         case 0:
            break;
         // Adicionar
         case 1:
            do {
               System.out.println("Posicion? ");
               act = teclado.nextInt();
               if(act &lt; 0 || Tam &gt;= Tam) System.out.println("Error en la posicion, rango de 0 a " + Tam);
            } while(act &lt; 0 || act &gt;= Tam);
            System.out.println("Valor? ");
            Arr[act] = teclado.nextInt();
            break;
         // Modificar
         case 2:
            do {
               System.out.println("Posicion? ");
               act = teclado.nextInt();
               if(act &lt; 0 || Tam &gt;= Tam) System.out.println("Error en la posicion, rango de 0 a " + Tam);
            } while(act &lt; 0 || act &gt;= Tam);
            System.out.println("Valor actual: " + Arr[act]);
            System.out.println("Nuevo valor: ");
            Arr[act] = teclado.nextInt();
            break;
         // Borrar
         case 3:
            do {
               System.out.println("Posicion? ");
               act = teclado.nextInt();
               if(act &lt; 0 || Tam &gt;= Tam) System.out.println("Error en la posicion, rango de 0 a " + Tam);
            } while(act &lt; 0 || act &gt;= Tam);
            Arr[act] = 0;
            break;
         // Visualizar
         case 4:
            for(act = 0; act &lt; Tam; act++) System.out.println(act + "--&gt; " + Arr[act]);
            break;
         default:
            System.out.println("Opcion no reconocidad");

         }
      } while(op != 0);
      System.out.println("Fin del arreglo unidimensional");
   }

   // Arreglo unidimensional ...
   public void arregloUnidimensionalDatoAbstracto() {
      // Arreglo unidimensional
      Persona [] Arr;
      // Tamano arreglo unidimensional
      int Tam;

      // objeto para trabajar con teclado
      Scanner teclado = new Scanner(System.in);

      // Pregunta sobre el tamaÃƒÂ±o del arrglo
      do {
         System.out.println("TamaÃƒÂ±o del arreglo? ");
         Tam = teclado.nextInt();
         if(Tam &lt;= 0 || Tam &gt; 10) {
            System.out.println("Error en el tamaÃƒÂ±o, rango de 1 a 10");
         }
      } while(Tam &lt;= 0 || Tam &gt; 10);

      Arr = new Persona[Tam];

      int op = 1, act = 0;
      String nombre, apellido;
      int edad;
      // Menu
      do {
//         limpiar();
         visualizaMenu();
         System.out.println("");
         System.out.println("Opcion: ");
         op = teclado.nextInt();

         switch(op) {
         // Salir
         case 0:
            break;
         // Adicionar
         case 1:
            do {
               System.out.println("Posicion? ");
               act = teclado.nextInt();
               if(act &lt; 0 || act &gt;= Tam) {
                  System.out.println("Error en la posicion, rango de 0 a " + Tam);
               }
            } while(act &lt; 0 || act &gt;= Tam);

            System.out.println("Nombre(s)? ");
            teclado.skip("\n");
            nombre = teclado.nextLine();

            System.out.println("Apellidos? ");
            apellido = teclado.nextLine();

            System.out.println("Edad? ");
            edad = teclado.nextInt();

            Persona p = new Persona(nombre, apellido, edad);
            Arr[act] = p;
            break;
         // Modificar
         case 2:
            do {
               System.out.println("Posicion? ");
               act = teclado.nextInt();
               if(act &lt; 0 || act &gt;= Tam) System.out.println("Error en la posicion, rango de 0 a " + Tam);
            } while(act &lt; 0 || act &gt;= Tam);
            System.out.println("Valor actual: " + Arr[act]);
            System.out.println("Nuevo valor: ");
            teclado.skip("\n");
            //Arr[act] = teclado.nextLine();
            break;
         // Borrar
         case 3:
            do {
               System.out.println("Posicion? ");
               act = teclado.nextInt();
               if(act &lt; 0 || Tam &gt;= Tam) System.out.println("Error en la posicion, rango de 0 a " + Tam);
            } while(act &lt; 0 || act &gt;= Tam);
            Arr[act] = null;
            break;
         // Visualizar
         case 4:
            for(act = 0; act &lt; Tam; act++) {
               System.out.print(act + "--&gt; ");
               if(Arr[act] == null) {
                  System.out.println("null");
               } else {
                  Arr[act].visualiza();
               }
            }
            break;
         default:
            System.out.println("Opcion no reconocida");

         }
      } while(op != 0);
      System.out.println("Fin del arreglo unidimensional");
   }


   // Funcion Principal ....
   public static void main(String[] args) {
      Test t = new Test();
      // Falta hacer un menu para saber a cual acceso o a todos

      // Primero entra al de Long
      t.arregloUnidimensionalLong();

      // Despues al de dato abstracto (persona)
      t.arregloUnidimensionalDatoAbstracto();
   }
}

</pre></body></html>