Для сравнения использовал аналогичные функции тотал коммандера.
Проверяются все заданные условия - если хоть одно не совпадает, файл не помечается как искомый.\
Валидатор говорит что не ищет по части имени файла и не учитываются несколько условий.
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("amigo");
searchFileVisitor.setPartOfContent("programmer");
searchFileVisitor.setMinSize(0);
searchFileVisitor.setMaxSize(50);
Files.walkFileTree(Paths.get("C:\\Users\\USER\\Desktop\\1\\dir"), searchFileVisitor);
List<Path> foundFiles = searchFileVisitor.getFoundFiles();
for (Path file : foundFiles) {
System.out.println(file);
}
}
}