0 votos
por (20 puntos) en Java
ingreso valores por teclado y quiero hacer validaciones de modo que el vector no tenga valores repetidos.  como hacer? pruebo en la clase principal y me da error:
switch(opcion){
            case 1 :
                 System.out.println("Ingrese un numero de identificacion : \n");
                 numId=In.readInt();
                 System.out.println("Ingrese un num de ID para el libro:");
                 numIdlibro=In.readInt();
                 System.out.println("Ingrese un nombre:");
                 nombre=In.readString();
                 System.out.println("Ingrse un nombre de Autor:");
                 nombAutor=In.readLine();
       
            if (numIdlibro!=artC.getNumIdlibro()){
                  System.out.println("numero que no esta asignado ");
                 
                 }else{
                        System.out.println("");
            }
             vec.cargarDatos(numId, numIdlibro, nombre,nombAutor);

1 Respuesta

0 votos
por (450 puntos)

Hola, verás no sé si usar un vector de este estilo Libro[] lib o este Vector<Libro> lib, pero lo que tienes que hacer es un for q te recorra los elementos de tu vector, así:

private boolean chequearLibro(Libro libro){

for(Libro l : lib){

if(l.getIdLibro() == libro.getIdLibro){

return true;

}

return false;

}

así verificas si tienes repetidos o no, por otro lado a tu función de cargarDatos se sería más fácil crear el objeto y luego pasarlo por parámetro en la función, es decir en lugar de hacer esto;

 vec.cargarDatos(numId, numIdlibro, nombre,nombAutor);

haz esto:

 vec.cargarDatos(Libro libro);

es sólo una opinión, Saludos.

Preguntas relacionadas

Bienvenido a Dudas de Programación, donde puedes hacer preguntas y recibir respuestas sobre los problemas más frecuentes de los lenguajes de programación, frameworks de desarrollo y bases de datos que utilices. Foro de Línea de Código

Categorías

...