sábado, 1 de junio de 2013

Ejemplo: Uso de arreglos o array como estructura de datos

Aquel que pregunta una vez es tonto una vez, aquel que no pregunta nunca es tonto siempre.

Comparto un ejemplo del uso de arreglos, como una estructura de datos, proporcionando solución a un problema planteado.
Si la explicación aun no te queda clara puedes consultar la anterior publicación la cual es un instructivo como manual de bolsillo indispensable, con el cual puedes aprender rápidamente el uso de los mismos.

Fundamentos de Arreglos o Array
Apuntadores en java.

Ejemplo 1 parte 1

 



Código fuente

//Librerias importantes

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.logging.Level;
import java.util.logging.Logger;


public class ArregloSimple {
    
      //Tipos Simples
  private  String mensaje;
  private  String linea;
  private boolean asignado;
  
     //forma#1
//  String [] Nombres;
//  String [] Clasificaciones={"Disponible","Espacio no Disponible","Error de formato","Sistema iniciado"};
  //forma#2
   private  String [] Nombres, Clasificacion={"Disponible","Espacio no Disponible","Error de formato","Sistema iniciado"};
  
   
   InputStreamReader Flujo_bytes= new InputStreamReader (System.in);
   BufferedReader entrada= new BufferedReader (Flujo_bytes); 
 public void iniciarSistema(){
      System.out.println("Para Iniciar el sistema debe ingresar el numero de datos a registrar:");
      try {
          linea= entrada.readLine();
         
      } catch (IOException ex) {
         System.out.println("Error ");

      }
      
      
      try{
      int numPersona= Integer.parseInt(linea);
      Nombres= new String[numPersona];
      System.out.println( Clasificacion[3]);
      }catch(NumberFormatException e){
         System.out.println("Error ");

      }
       
 }
 
 public void registrarUsuario(){
  boolean respuesta= true;
  while(respuesta){
  System.out.println("Ingrese el nombre de usuario");  
      try {
          linea= entrada.readLine();
          listarSimple(linea);
         
      } catch (IOException ex) {
         System.out.println("Error ");

      }
      
      try{
      System.out.println("Desea registrar otro usuario? SI o NO");   
      linea= entrada.readLine();
      System.out.flush();
      
       if( linea.equalsIgnoreCase("si")){
              continue;
              }else if( linea.equalsIgnoreCase("no")){
              break;
              }
      
      }catch (IOException ex) {
             System.out.println("Error ");

          }
  
  }
     
 
 }
  
public void listarSimple (String nombre){
asignado= false;
if(Nombres!=null){//analizar si existe
        
                for (int i = 0; i < Nombres.length; i++) {

                if(Nombres[i]== null){
                System.out.println("Casilla \t"+i+Clasificacion[0]);
                Nombres[i]=nombre;
                
                asignado=true;
                break;
                }
                    
                
            }
            
        }

if(asignado){
            mensaje="Asignado Exitosamente";
            System.out.println(mensaje); 
        }else{
              mensaje="No existe Espacio suficiente";
            System.out.println(mensaje); 
        }


}

public void listarDatos(){
 for (int i = 0; i < Nombres.length; i++) {

               
                System.out.println("Usuario \t"+Nombres[i]);
               
         }


}

    
}


//clase con el metodo principal (main)
public class Ejemplo2 {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
      ArregloSimple objeto= new ArregloSimple();
      objeto.iniciarSistema();
      objeto.registrarUsuario();
      objeto.listarDatos();
      
      
    }
}

No hay comentarios :

Publicar un comentario