以下Java代码似乎很冗长,并且有些重复。可以使它更简洁吗?

A myObjA = getObject(id, A.class);

if (myObjA != null) {
  handleA(myObjA);
}

B myObjB = getObject(id, B.class);

if (myObjB != null) {
  handleB(myObjB);
}

C myObjC = getObject(id, C.class);

if (myObjC != null) {
  handleC(myObjC);
}


忘了提。这不在Java 8上运行:(

最佳答案

完善其他答案:

Optional.ofNullable(getObject(id, A.class)).ifPresent(this::handleA);
Optional.ofNullable(getObject(id, B.class)).ifPresent(this::handleB);
Optional.ofNullable(getObject(id, C.class)).ifPresent(this::handleC);


这更短,更简洁。

10-04 12:56