потестил, у меня все проходит.
логика простая - 4 булиновские переменные по дефолту равны true (для того чтобы если критерий не задан, то работало и без него). если файл не подходит под критерий соответствующая переменная становится false.
package com.javarush.task.task31.task3111;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.List;
/*
Продвинутый поиск файлов
*/
public class Solution {
public static void main(String[] args) throws IOException {
SearchFileVisitor searchFileVisitor = new SearchFileVisitor();
/*
searchFileVisitor.setPartOfName("");
searchFileVisitor.setPartOfContent("");
searchFileVisitor.setMinSize(0);
searchFileVisitor.setMaxSize(10000);
*/
Files.walkFileTree(Paths.get("C:/test/"), searchFileVisitor);
List<Path> foundFiles = searchFileVisitor.getFoundFiles();
for (Path file : foundFiles) {
System.out.println(file);
}
}
}