Если вы хотите рекурсивно отсортировать все пути к файлам в древовидной структуре, вы можете попробовать Files.walk
, используя sorted
с потоком Java 8:
List<String> files = Files.walk(Paths.get("/tmp"))
.filter(Files::isRegularFile) // Check you have only file names
.map(Path::toString) // map to string
.sorted() // sort
.collect(Collectors.toList()); // create list
Если вы хотите сортировку без учета регистра:
List<String> files = Files.walk(Paths.get("d:/tmp"))
.filter(Files::isRegularFile) // Check you have only file names
.map(Path::toString) // map to string
.sorted(Comparator.comparing(String::toLowerCase)) // sort case insensitive
.collect(Collectors.toList()); // create list