Вам нужно как-то справиться с ситуацией, когда файл не существует - поэтому вам нужно либо сгенерировать исключение (возможно, не лучшее решение, но также возможное), либо вернуть какой-то специальный «маркерный объект», указывающий, что файл не был найден
Я думаю, что возвращение null - плохая идея и индикатор плохого дизайна - просто подумайте обо всех ситуациях NPE, о которых вам нужно будет помнить в будущем
Лучше вернуться Необязательно (если у вас JDK старше 8, вы можете использовать Guava)
public Optional<File> get_File(String fileName){
for (int i = 0; i < this.files.size(); i++) {
if(this.files.get(i).name.equals(fileName)) {
return Optional.of(this.files.get(i));
}
}
return Optional.empty();
}
, а затем просто обрабатывать это при вызове
get_File("filename").orElse(...) // or even .orElseThrow(...)