alguien que me pueda aportar ideas de como ordenar un ArrayList por medio de el atributo promedio
ya e checado varios lados desde la Api hasta videos y no logro
E usado compareto y comparator como clase Externa pero igual no
clase modelo
public class Modelo {
int cal1,cal2,cal3,cal4,cal5,promedio;
String nombre,apellidos;
ArrayList a;
public Modelo(){
}
public Modelo(String nombre,String apellidos,int cal1,int cal2,int cal3,int cal4,int cal5,int promedio){
this.nombre=nombre;
this.apellidos=apellidos;
this.cal1=cal1;
this.cal2=cal2;
this.cal3=cal3;
this.cal4=cal4;
this.cal5=cal5;
this.promedio=promedio;
}
public void setNombre(String nombre){
this.nombre=nombre;
}
public void setApellidos(String apellidos){
this.apellidos=apellidos;
}
public void setCal1(int cal1)
{ this.cal1=cal1;
}
public void setCal2(int cal2){
this.cal2=cal2;
}
public void setCal3(int cal3){
this.cal3=cal3;
}
public void setCal4(int cal4){
this.cal4=cal4;
}
public void setCal5(int cal5){
this.cal5=cal5;
}
public void setPromedio(int promedio){
this.promedio=promedio;
}
public int getPromedio(){
return promedio;
}
public String getNombre(){
return nombre;
}
public String getApellidos(){
return apellidos;
}
public int getCal1(){
return cal1;
}
public int getCal2(){
return cal2;
}
public int getCal3(){
return cal3;
}
public int getCal4(){
return cal4;
}
public int getCal5(){
return cal5;
}
clase main
public class Main extends Modelo {
public int selector=1;
public ArrayList a=new ArrayList();
Modelo u;
public Main(){
while(selector!=0){
selector=Integer.parseInt(JOptionPane.showInputDia log("Seleccion una opcion : \n1.-Crear Alumno\n2.-Imprimir alumnos \n3.-Media de los alumnos \n4.-Ordenar Por Promedio \n0.-Salir"));
switch(selector){
case 1:
this.nombre=JOptionPane.showInputDialog("Ingresa nombre");
this.apellidos=JOptionPane.showInputDialog("Ingres a Apellidos");
this.cal1=Integer.parseInt(JOptionPane.showInputDi alog("Calificacion 1"));
this.cal2=Integer.parseInt(JOptionPane.showInputDi alog("Calificacion 2"));
this.cal3=Integer.parseInt(JOptionPane.showInputDi alog("Calificacion 3"));
this.cal4=Integer.parseInt(JOptionPane.showInputDi alog("Calificacion 4"));
this.cal5=Integer.parseInt(JOptionPane.showInputDi alog("Calificacion 5"));
this.promedio=(cal1+cal2+cal3+cal4+cal5)/5;
u=new Modelo(nombre,apellidos,cal1,cal2,cal3,cal4,cal5,p romedio);
a.add(u);
break;
case 2:
imprimir(u);
break;
case 3:
break;
case 4:
break;
}
}
}
public void imprimir(Modelo u){
for(int j = 0;j < a.size();j++){//ahora imprimiremos las personas de nuestro ArrayList
System.out.println("============================== ==============================");
System.out.println("Alumno");
u = (Modelo)a.get(j);
System.out.println("Nombre "+u.getNombre());
System.out.println("Apellidos: "+u.getApellidos());
System.out.println("calificaciones : "+"Español :"+u.getCal1()+"\t"+"Matematicas : "+u.getCal2()+"\t"+"Historia : "+u.getCal3()+"\t"+"Geografia : "+u.getCal4()+"\t"+"Civismo : "+u.getCal5() );
System.out.println("Promedio del alumno :" + u.getPromedio());
System.out.println("============================== ==============================");
}
}
public static void main(String args[]){
Main v=new Main();
}
}
}