I'm struggling with sorting an ArrayList
of a generic objects.
I've tried to do it with Comparable
interface, but it doesn't work, I've also tried with sort method of collections, but I'm still at the same point.
public class League<T extends Player> implements LeagueComparator<T> {
private String name;
private ArrayList<Team<T>> teams = new ArrayList<>();
public void ranking(){
for (Team<T> team : teams){
System.out.println(team.getName() + team.ranking());
int ranking = team.ranking();
Collections.sort(teams, new Comparator<Team<T>>() {
@Override
public int compare(Team<T> o1, Team<T> o2) {
return
In this method, I want to take a ranking integer from Team class and sort it, and then return the sorted values
public class Team<T extends Player> {
private int size = 0;
private String name;
private int games;
private int win;
private int lose;
private int draw;
private ArrayList<T> members = new ArrayList<>();
public int ranking(){
return (win * 2) + draw;
}
This is Team class EDIT
System.out.println(team.ranking() + " " + team.getName());
Collections.sort(teams, Comparator.comparingInt(team::rankings));
System.out.println(team.ranking() + " " + team.getName());
Now it throws
Exception in thread "main"
java.util.ConcurrentModificationException