A mi me surgió una duda acerca de su problema, soy novata en Java y queria saber si se puede modificar el valor de un objeto sin Generics en ArrayList por ejemplo esto
lista.add(1);//<-¿Este valor se puede incrementar?
lista.add(cualquierCosa);
Y con respecto al problema en general si debería leer algo de Programación Orientada a Objetos, yo igual soy novata asi que hice esto
package aplicacion.test;
import aplicacion.modelo.dominio.Habilidad;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
/**
*
* @author Ana Kéldysh
*/
//Clase Principal que contiene el método main
//Declaración del método main
public static void main
(String[] args
) { List<Habilidad> poderes = new ArrayList<>();
poderes.add(new Habilidad("Arco", 0));
poderes.add(new Habilidad("Inteligencia", 0));
poderes.add(new Habilidad("Fuerza", 0));
poderes.add(new Habilidad("Pocima", 0));
Miguel.add("Inteligencia");
Miguel.add("Paciencia");
Agus.add("Pocima");
Agus.add("Inteligencia");
Agus.add("Invisibilidad");
}
public static void compararListas
(List poderes,
List personaje
) { for (int i = 0; i < poderes.size(); i++) {
for (int j = 0; j < personaje.size(); j++) {
Habilidad a = (Habilidad) poderes.get(i);
if (a.getNombre().equals(personaje.get(j))) {
a.setApariciones(a.getApariciones() + 1);
}
}
}
}
public static void mostrarLista
(List poderes
) { for (int i = 0; i < poderes.size(); i++) {
if (i < poderes.size() - 1) {
System.
out.
print(poderes.
get(i
) + ", "); } else {
System.
out.
println(poderes.
get(i
)); }
}
}
}
package aplicacion.modelo.dominio;
/**
*
* @author Ana Kéldysh
*/
public class Habilidad {
private int apariciones;
public Habilidad(){
}
public Habilidad
(String nombre,
int apariciones
) { this.nombre = nombre;
this.apariciones = apariciones;
}
return nombre;
}
public void setNombre
(String nombre
) { this.nombre = nombre;
}
public int getApariciones() {
return apariciones;
}
public void setApariciones(int apariciones) {
this.apariciones = apariciones;
}
@Override
return nombre + "-Apariciones: " + apariciones;
}
}