Autor Tema: Ejemplo con tipos enumerados (enum) Java. Ejercicio CU00681B Ejercicio resuelto  (Leído 4591 veces)

adrit

  • Principiante
  • **
  • APR2.COM
  • Mensajes: 59
    • Ver Perfil
Hola!

Dejo mi código para el ejercicio CU00681B

Citar
EJERCICIO

Crea una clase Vehiculo donde definas un tipo enumerado MarcaDeVehiculo cuyos valores posibles serán FORD, TOYOTA, SUZUKI, RENAULT, SEAT. Establece como atributos de la clase matricula (tipo String) y marca (tipo MarcaDeVehiculo) y crea los métodos getters (para obtener) y setters (para establecer el valor) de los atributos. Escribe un pequeño programa de prueba donde verifiques que los métodos funcionan correctamente.

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

public class Vehiculo {

    enum MarcaDeVehiculo {FORD, TOYOTA, SUZUKI, RENAULT, SEAT};
    private String matricula;
    private MarcaDeVehiculo marca;
    private Scanner sc = new Scanner(System.in);

    public void setMatricula(String matricula) { this.matricula = matricula;}

    public void setMarca(MarcaDeVehiculo marca) { this.marca = marca;}

    public void pedirMarca() {
        System.out.println("Selecciona una marca de la lista:");
        int i = 1;
        for (MarcaDeVehiculo tmp : marca.values()){
            System.out.println(i++ +") "+tmp);
        }
        boolean condicion = false;
        while (condicion == false) {
            switch (sc.nextInt()) {
                case 1 : marca=MarcaDeVehiculo.FORD;
                condicion = true;
                break;
                case 2 : marca=MarcaDeVehiculo.TOYOTA;
                condicion = true;
                break;
                case 3 : marca=MarcaDeVehiculo.SUZUKI;
                condicion = true;
                break;
                case 4 : marca=MarcaDeVehiculo.RENAULT;
                condicion = true;
                break;
                case 5 : marca=MarcaDeVehiculo.SEAT;
                condicion = true;
                break;
                default : System.out.println("Selecciona una opción valida");
            }
        }
    }

    public String getMatricula() { return matricula; }

    public MarcaDeVehiculo getMarca() { return marca; }
}

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

public class Test {

    public static void main (String[] args) {
        Vehiculo auto = new Vehiculo();
        Scanner sc = new Scanner (System.in);
        auto.pedirMarca();
        System.out.println("Ingrese matricula");
        auto.setMatricula(sc.nextLine());
        System.out.println("Mostrando marca : "+auto.getMarca());
        System.out.println("\nMostrando matricula : "+auto.getMatricula());
    }
}

Gracias,

Saludos!
« Última modificación: 25 de Julio 2015, 10:58 por Alex Rodríguez »

RaGa

  • Moderador Global
  • Intermedio
  • *******
  • APR2.COM
  • Mensajes: 234
    • Ver Perfil
Re:Tipos enumerados (enum) Java. Ejercicio (CU00681B) Ejercicio resuelto
« Respuesta #1 en: 23 de Julio 2015, 14:21 »
Hola Adrián:

Estuve revisando tu ejercicio y lo veo perfecto! Veo que has utilizado conceptos que se ven en la clase siguiente como es el método values(), combinado muy bien con el for-each.

A seguir adelante!

adrit

  • Principiante
  • **
  • APR2.COM
  • Mensajes: 59
    • Ver Perfil
Re:Tipos enumerados (enum) Java. Ejercicio (CU00681B) Ejercicio resuelto
« Respuesta #2 en: 23 de Julio 2015, 14:46 »
Hola RaGa,

Para ser franco tuve que ver otros ejemplos de este ejercicio y googlear un poco, ya que me estaba sacando canas verdes no poder encontrar la manera de mostrar el contenido para dar a conocer las opciones validas a elegir.
Ahí fue donde encontré el método values(). Creo que lo que mas me complicó fue no encontrar información de éste en la documentación de enum en java.
No digo que no esté, sino que se me pasó o no supe buscar.

Gracias por tu devolución.

Saludos!

RaGa

  • Moderador Global
  • Intermedio
  • *******
  • APR2.COM
  • Mensajes: 234
    • Ver Perfil
Re:Tipos enumerados (enum) Java. Ejercicio (CU00681B) Ejercicio resuelto
« Respuesta #3 en: 23 de Julio 2015, 15:06 »
Hola Adrián:

Lo que comentas es muy destacable: es muy bueno investigar un poco más.
Buscar información en el API de java es una recomendación que yo haría ya que en ella está documentada toda la información que necesitamos sobre clases, métodos, constructores, etc. Es una buena costumbre empezar a familiarizarnos con ella.
También es saludable leer otros códigos e interpretarlos. Por eso leer el código realizado por algun otro compañero del foro es muy aprovechable, es otra forma de aprender y ver nuevas ideas o estrategias que no habíamos contemplado.

Saludos!

adrit

  • Principiante
  • **
  • APR2.COM
  • Mensajes: 59
    • Ver Perfil
Re:Tipos enumerados (enum) Java. Ejercicio (CU00681B) Ejercicio resuelto
« Respuesta #4 en: 23 de Julio 2015, 23:35 »
Gracias,

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".