Autor Tema: Ejemplo Tipos enumerados (enum) Java Ejercicio CU00681B  (Leído 2342 veces)

jotase1507

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 38
    • Ver Perfil
Ejemplo Tipos enumerados (enum) Java Ejercicio CU00681B
« en: 23 de Febrero 2015, 01:52 »
Buenas noches, ingreso mi codigo para su revision. :)

Clase Vehiculo
Código: [Seleccionar]
/**
 * Esta clase se encarga de asignar valores de Marca (Ya determinadas) y Matricula
 * @author Juan Calderon
 * @version 22/2/2014
 */
public class Vehiculo {
   
    enum MarcaDeVehiculo {
        FORD, TOYOTA, SUZUKI, RENAULT, SEAT
    }
   
    /**
     * En el constructor se inicializa la variable matricula.
     */
    private String matricula;
    private MarcaDeVehiculo marca;   
    public Vehiculo(){
        matricula = "";
    }
   
    /**
     * Este metodo devuelve el valor asignado a la variable matricula.
     * @return Un string con el valor asignado.
     */
   
    public String getMatricula() {
        return matricula;
    }
     /**
      * Este metodo asigna un valor a la variable matricula.
      * @param valorMatricula es el asignado por el usuario.
      */
   
    public void setMatricula (String valorMatricula) {
        matricula = valorMatricula;
    }
   
    /**
     * Este metodo devuelve alguno de los valores pre-definidos en la clase enum.
     * @return El valor asignado convertido en String.
     */
   
    public String getMarcaDeVehiculo() {
        return marca.toString();
    }
   
    /**
     * Este metodo asigna alguno de los valores pre-definidos en la claes enum, que son (FORD, TOYOTA, SUZUKI, RENAULT, SEAT)
     * @param valorMarca sera el elegido por el usuario.
     */
   
    public void setMarcaDeVehiculo(String valorMarca) {
        switch (valorMarca) {
            case "FORD":    marca = marca.FORD;     break;
            case "TOYOTA":  marca = marca.TOYOTA;   break;
            case "SUZUKI":  marca = marca.SUZUKI;   break;
            case "RENAULT": marca = marca.RENAULT;  break;
            case "SEAT":    marca = marca.SEAT;     break;
        }
    }
}

Clase EntradaDeTeclado
Código: [Seleccionar]
import java.util.Scanner;

/**
 * Esta clase solicita y devuelve datos ingresados por el usuario.
 * @author Juan Calderon
 * @version 16/02/2015 A
 */

public class EntradaDeTeclado {
   
    private String entradaTeclado;
   
    public EntradaDeTeclado ()  {
        entradaTeclado = "";
    }
    /**
     * Solicita ingreso de datos al usuario
     */
   
    public void pedirEntrada(){
        Scanner entradaScanner = new Scanner(System.in);
        entradaTeclado = entradaScanner.nextLine();
    }
    /**
    * Devuelve datos ingresados por el usuario.
    * @return datos ingresados por el usuario.
    */
   
    public String getEntrada () {
        return entradaTeclado;
    }
}

Clase Prueba (donde se encuentra el main)
Código: [Seleccionar]
public class Prueba {
    public static void main(String[] args) {
        System.out.println("Inicia el programa.");
        System.out.println("Se le solicitara ingresar informacion.");
        Vehiculo auto = new Vehiculo();
        EntradaDeTeclado entrada1 = new EntradaDeTeclado();
        EntradaDeTeclado entrada2 = new EntradaDeTeclado();
        while (entrada1.getEntrada().isEmpty()) {
            System.out.println("Debe ingresar una de las Marcas disponibles. (FORD, TOYOTA, SUZUKI, RENAULT, SEAT)");
            entrada1.pedirEntrada();
            auto.setMarcaDeVehiculo(entrada1.getEntrada().toUpperCase());
        }
        while (entrada2.getEntrada().isEmpty()) {
            System.out.println("Debe ingresar una Matricula.");
            entrada2.pedirEntrada();
            auto.setMatricula(entrada2.getEntrada().toUpperCase());
        }
        System.out.println("Marca: " + auto.getMarcaDeVehiculo().toUpperCase());
        System.out.println("Matricula: " + auto.getMatricula().toUpperCase());
    }
}
« Última modificación: 30 de Agosto 2015, 19:04 por Alex Rodríguez »

toni_apr

  • Avanzado
  • ****
  • Mensajes: 497
  • Curiosidad, es uno de los pilares del Conocimiento
    • Ver Perfil
Re:Solucion Ejercicio CU00681B - Tipos enumerados (enum) Java
« Respuesta #1 en: 23 de Febrero 2015, 21:09 »
Hola jotase

Tu ejercicio está muy bien.

Veo que has modificado la clase EntradaDeTeclado para que se adapte a tu forma de usarla en lugar de adaptarte tu a la clase. Bien.

A destacar la creación de un main escueto que da órdenes a los objetos para que hagan el trabajo con sus métodos. Muy bien.

Saludos

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".