可选的类重构

Dar*_*enn 0 java optional

我写了这个丑陋的生物:

Optional<Transaction> secondSide = findSecondSide(transaction.getId());
        if(secondSide.isPresent()) {
            secondSide.get().setFlag("Y");
            save(secondSide.get());
        }
Run Code Online (Sandbox Code Playgroud)

有没有办法可以重构这个,而不使用isPresent()get()

And*_*ner 7

使用ifPresent方法:

secondSide.ifPresent(s -> { s.setFlag("Y"); save(s); });
Run Code Online (Sandbox Code Playgroud)