Я хочу отсортировать ArrayList
по размеру File
s, содержащемуся в нем.ArrayList <File> Сортировка по файлу.length()
public class ArraySorting implements Comparator<File> {
public ArraySorting() { }
public ArrayList<File> sort(ArrayList<File> arrayOfFiles) {
Arrays.sort(arrayOfFiles, new ArraySorting());
return arrayOfFiles;
}
public int compare(File a, File b) {
long aSize = a.length();
long bSize = b.length();
if (aSize < bSize) {
return -1;
}
else if (aSize > bSize) {
return 1;
}
else {
return 0;
}
}
}
я получил ошибку:
The method sort(T[], Comparator) in the type Arrays is not applicable for the arguments (ArrayList, ArraySorting).
Вы используете Collections.sort (...)? – nafas
«ArrayList» - это список, а не массив! Используйте 'Collections.sort (arrayOfFiles, new ArraySorting())'. – Seelenvirtuose
Пробовал ли вы ошибаться в своей ошибке? http://stackoverflow.com/questions/12889314/comparator-wont-work-with-arrays-sort –