Ho un codice per ordinare i percorsi per data modificata. Voglio anche scrivere del codice per ordinare i percorsi in ordine inverso, e in seguito vorrei aggiungere altri metodi di ordinamento. C'è un modo per fare tutto l'ordinamento da un singolo file di classe? O devo creare un'altra classe PathSortByDateReverse, PathSortByCreated, PathSortByFoo, ecc. Inoltre, come utilizzerei i diversi metodi di ordinamento?Implementazione del comparatore più volte in un singolo file di classe
import java.nio.file.Path;
import java.util.Comparator;
public class PathSortByDate implements Comparator<Path> {
@Override
public int compare(Path first, Path second) {
long seconddate = second.toFile().lastModified(); // get just the filename
long firstdate = first.toFile().lastModified();
if (firstdate == seconddate) {
return 0;
} else if (firstdate > seconddate) {
return 1;
} else {
return -1;
}
}
}
Ho poi chiamo dall'altra classe con:
public static ArrayList<Path> sortArrayListByDate(ArrayList<Path> pathlist) {
Collections.sort(pathlist,new PathSortByDate());
return pathlist;
}
Grazie, ci ho pensato, ma probabilmente voglio aggiungere altri metodi di ordinamento in seguito, e in sostanza voglio capire meglio come funziona. – localhost