Foros del Web » Programación para mayores de 30 ;) » Java »

Mostrar resultados de una clase en vector

Estas en el tema de Mostrar resultados de una clase en vector en el foro de Java en Foros del Web. Hola que tal a todos, me gustaria saber si hay alguien que pueda ayudarme con lo siguiente: Tengo creado un proyecto en el cual existe ...
  #1 (permalink)  
Antiguo 09/06/2011, 10:20
Avatar de alrf1809  
Fecha de Ingreso: junio-2011
Ubicación: caracas
Mensajes: 40
Antigüedad: 12 años, 10 meses
Puntos: 0
Pregunta Mostrar resultados de una clase en vector

Hola que tal a todos, me gustaria saber si hay alguien que pueda ayudarme con lo siguiente:

Tengo creado un proyecto en el cual existe una superclase Vehiculo con subclase Carro, camion, moto, me piden que Realice un programa capaz de leer por teclado los datos de 10 vehículos y los liste a continuación por pantalla.. Pero no se como hacerlo, me dijeron que con un vector puedo hacerlo. les agradeceria mucho al que me ayude con esto.

  #2 (permalink)  
Antiguo 09/06/2011, 14:08
Avatar de CapacProg  
Fecha de Ingreso: marzo-2010
Ubicación: Lima - Perú
Mensajes: 324
Antigüedad: 14 años
Puntos: 71
Respuesta: Mostrar resultados de una clase en vector

Debes de utilizar un ArrayList para almacenar tus objetos y bueno un vector también es una elección. Como se declararía a continuación
Código C++:
Ver original
  1. Vehiculo vehiculos[]= new Vehiculo[10];
  2. vehiculo[0]= new Carro();
  3. vehiculo[1]= new Camion();
  4. vehiculo[2]= new Moto();
  5. .
  6. .
  7. .
tu ya ves que construtor usas.

Espero te sirva.
__________________
%
El mejor guerrero no es el que triunfa siempre sino el que vuelve sin miedo a la batalla.
%
  #3 (permalink)  
Antiguo 09/06/2011, 15:46
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Mostrar resultados de una clase en vector

@CapacProg, probablemente se refieren a un vector cuando hablan de la clase Vector como tal.

@alrf1809, cualquier tutorial sobre collections te puede ayudar a lo que deseas.
En esta encuentras unos cuantos ejemplos:
http://www.java2s.com/Tutorial/Java/...00__Vector.htm
  #4 (permalink)  
Antiguo 09/06/2011, 22:43
Avatar de alrf1809  
Fecha de Ingreso: junio-2011
Ubicación: caracas
Mensajes: 40
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: Mostrar resultados de una clase en vector

Cita:
Iniciado por CapacProg Ver Mensaje
Debes de utilizar un ArrayList para almacenar tus objetos y bueno un vector también es una elección. Como se declararía a continuación
Código C++:
Ver original
  1. Vehiculo vehiculos[]= new Vehiculo[10];
  2. vehiculo[0]= new Carro();
  3. vehiculo[1]= new Camion();
  4. vehiculo[2]= new Moto();
  5. .
  6. .
  7. .
tu ya ves que construtor usas.

Espero te sirva.

Amm.. sere un poco mas preciso ahora, ya me aconsejaron que mejor los almacene en una matriz. Pero donde y como debo definir y almacenarlo dentro de la matriz? asi tengo mi codigo en el caso de CARRO. te agradeceria tu ayuda !!

while (sw==0){
System.out.println("Escoja el tipo de Vehiculo que desea Registrar.");
System.out.println("1. Carro.");
System.out.println("2. Camion.");
System.out.println("3. Moto.");
System.out.println("4. Lancha.");
System.out.println("5. Bicicleta.");
System.out.println("6. Salir.");
menu=dato.nextInt();




switch (menu){
case 1:
System.out.println("REGISTRO DE CARROS");

System.out.println("Ingrese la matricula del Carro: ");
matricula=dato.next();
System.out.println("Ingrese serial del motor: ");
serial=dato.next();
System.out.println("Ingrese la marca: ");
marca=dato.next();
System.out.println("Ingrese el modelo: ");
modelo=dato.next();
System.out.println("ingrese el color: ");
color=dato.next();
System.out.println("Ingrese el nro de ruedas: ");
numRuedas=dato.nextInt();
System.out.println("Ingrese la fecha de matriculacion: ");
fechaMatriculacion=dato.next();
System.out.println("Ingrese el nro de puertas: ");
numPuertas=dato.nextInt();
System.out.println("¿Hay presencia o ausencia de pasajeros S/N?: ");
paPasajeros=dato.next();
if (paPasajeros.equalsIgnoreCase("S")){
System.out.println("¿Cual es el nro de pasajeros?: ");
numPasajeros=dato.nextInt();
}

Carro a=new Carro(matricula, serial, marca, modelo, color, numRuedas, fechaMatriculacion, numPuertas, paPasajeros, numPasajeros);
  #5 (permalink)  
Antiguo 10/06/2011, 09:28
Avatar de BLEND  
Fecha de Ingreso: marzo-2006
Mensajes: 97
Antigüedad: 18 años, 1 mes
Puntos: 0
Respuesta: Mostrar resultados de una clase en vector

Que tal alrf1809, pues lo que yo te recomendaria es que te crees una clase con setters y getters (VO) en el cual especifiques los atributos de los objetos, ya que todos estos comparten, de alguna manera, las mismas caracteristicas.

Una vez hecho esto puedes crear cuantos camiones, carros, motos, bicicletas, etc, que necesites y puedes ir guardando cada objeto en un arraylist o algo asi.

Te pongo un pequeño ejemplo:

Código:
class CaracteristicasVehiculoVO {
    private String modelo;
    private String marca;
    private String color;
    private String precio;

    public String getColor() {
        return color;
    }

    //--> Los demas Getters

    public void setColor(String color) {
        this.color = color;
    }

    //--> Los demas setters
    
}
Ahora, en la clase principal o el metodo principal o en la parte que quieras puedes hacer esto en un ciclo, claro, es de acuerdo a como tu lo quieras hacer.

Código:
    public void leerInformacion() {
        CaracteristicasVehiculoVO vehiculoVO = null;
        ArrayList listaVehiculosArr = new ArrayList();
        for(int i=0;i<3;i++) {
            //Creamos una nueva instancia de la clase por cada ciclo
            vehiculoVO = new CaracteristicasVehiculoVO();
            //Vamos seteando los datos en el VO que PREVIAMENTE has leido
            vehiculoVO.setColor("La variable con el color recibido");
            vehiculoVO.setMarca("La variable con la marca recibido");
            vehiculoVO.setModelo("La variable con el modelo recibido");
            //--> etc...
            
            //Una vez que esten todos los datos seteados guardamos el objeto en 
            //el ArrayList para despues sacarlos y mostrar su contenido en el
            //metodo muestraInformacion
            listaVehiculosArr.add(vehiculoVO);
        }
    }
    
    public void muestraInformacion(ArrayList arrayDeObjetosVehiculoVO) {
        CaracteristicasVehiculoVO vehiculoVO = null;
        for(int i=0;i<3;i++) {
            //Obtienes el objeto con todas sus propiedades del array
            //No olvides hacer el casteo del tipo de objeto que tiene el arraylist
            vehiculoVO = (CaracteristicasVehiculoVO) arrayDeObjetosVehiculoVO.get(i);
            
            //Y ya con esto imprimes los valores de cada objeto
            System.out.println("El color es "+vehiculoVO.getColor());
            System.out.println("El modelo es "+vehiculoVO.getModelo());
            System.out.println("La marca es "+vehiculoVO.getMarca());
            //--> etc...
        }
    }
Espero que te pueda servir de algo.


Salu2...
__________________
.·´¯`·-> (3l£NÐ <-·´¯`·.

Etiquetas: clase, resultados, vectores
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:54.