public static List<File> listFilesRecursively(File dir) {
		List<File> fileList = newArrayList();
		addFilesRecursively(dir, fileList);
		return fileList;
	}
public static List < File > listFilesRecursively ( File dir ) { List < File > fileList = newArrayList ( ) ; addFilesRecursively ( dir , fileList ) ; return fileList ; }
Creates a List of all the files in a directory and it's subdirectories.

@param dir
the directory to scan.
@return List of all Files in the directory and it's subdirectories.