开始使用Java8并使用流,但我不明白为什么第一段代码没有按文件日期对目录列表进行排序,而第二段却没有? 排序前的第一个映射和映射前的第二个排序。
System.out.println("This does not work as far as sorting by date "
+ "- it sorts by alpha");
Files.list(Paths.get("C:\\ProgramData\\Dummy"))
.map(Path::getFileName)
.sorted(
(s1, s2)
-> s1.toFile().lastModified()
>= s2.toFile().lastModified() ? 1 : -1
)
.forEachOrdered(System.out::println);
System.out.println("--------------------");
System.out.println("This sorts by date");
Files.list(Paths.get("C:\\ProgramData\\Dummy"))
.sorted(
(s1, s2)
-> s1.toFile().lastModified()
>= s2.toFile().lastModified() ? 1 : -1
)
.map(Path::getFileName)
.forEachOrdered(System.out::println);
System.out.println("--------------------");