我有一些代码可以按修改日期对路径进行排序。我还想编写一些代码来以相反的顺序对路径进行排序,并且以后可能想要添加一些其他排序方法。有没有办法从单个类文件中进行所有排序?或者我是否必须创建另一个类 PathSortByDateReverse、PathSortByCreated、PathSortByFoo 等。另外,我将如何使用不同的排序方法?
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;
}
}
}
然后我从另一个类中调用它:
public static ArrayList<Path> sortArrayListByDate(ArrayList<Path> pathlist) {
Collections.sort(pathlist,new PathSortByDate());
return pathlist;
}