I have an object list and a string array as below. How can I sort my object list according to my array? Is it possible to do with java comparator and collection.sort() ?
Grade Object
Class Grade{
private Long keyId;
private String gradeName;
private int classCount;
}
Grade List
List<Grades> grades= new ArrayList<>();
String Array
String[] gradeOrder= {"year 1", "year 2", "year 3", "year 4"};
Gradesobject implementComparablethen you can simply useCollections.sort(grades, yourCustomComparator);whereComparator<Grades> yourCustomComparator = (Grades g1, Grades g2) -> g1.gradeName.compareTo( g2.gradeName);. This will use normal string sorting which thankfully we can use for your list because year 1 to year 4 are all in order already.String YEAR_3 = "sort_1";andString YEAR_2 = "sort_2";Or map the whole list and use that as your Comparator