目录排在前面,文件排在后面。按照字典升序排列。直接上代码
List<File> files = Arrays.asList(new File("D:/").listFiles());
Collections.sort(files, new Comparator<File>(){
@Override
public int compare(File o1, File o2) {
if(o1.isDirectory() && o2.isFile())
return -1;
if(o1.isFile() && o2.isDirectory())
return 1;
return o1.getName().compareTo(o2.getName());
}
});
for(File f : files)
System.out.println(f.getName());