在 Java 文件中出现 "The method isEmpty() is undefined for the type Optional" 错误

Getting "The method isEmpty() is undefined for the type Optional" Error in Java File

我的 Eclipse Java 编译器无法识别我代码中的 isEmpty 方法。我知道 isEmpty 来自 Java 1.6,但我使用的是 1.8。我也试过导入 org.apache.commons.lang.StringUtils,但这不起作用。我错过了什么?

@Repository("fakeDao") 
public class FakePersonDataAccessService implements PersonDao {
    
    private static List<Person> DB = new ArrayList<>();
    
    @Override
    public int insertPerson(UUID id, Person person) {
        DB.add(new Person(id, person.getName()));
        return 1;
    }

    @Override
    public List<Person> selectAllPeople() {
        return DB;
    }
    
    @Override
    public int deletePersonById(UUID id) {
        Optional<Person> personMaybe = selectPersonById(id);
        if (personMaybe.isEmpty()) {
            return 0;
        }
        DB.remove(personMaybe.get());
        return 1;
    }
    
    @Override
    public Optional<Person> selectPersonById(UUID id) {
        return DB.parallelStream()
                .filter(person -> person.getId().equals(id))
                .findFirst();
    }

    @Override
    public int updatePersonById(UUID id, Person person) {
        return 0;
    }

}

OptionalisEmpty 方法直到 Java 11.

才添加

对于 Java 8 你将不得不使用 ! isPresent()