private class SortFileName implements Comparator<File> { @Override public int compare(File f1, File f2) { return f1.getName().compareToIgnoreCase(f2.getName()); } } private class SortFolder implements Comparator<File> { @Override public int compare(File f1, File f2) { if ((f1.isDirectory() && f2.isDirectory()) || (!f1.isDirectory() && !f2.isDirectory())) return 0; else if (f1.isDirectory() && !f2.isDirectory()) return -1; else return 1; } }