如何在方法的参数中进行空检查?

时间:2017-05-17 05:11:22

标签: java nullpointerexception

喜欢

x = setDetailsFromSegment(getDetails.getProductList().getProductDetails().get(0).getItinerary().getOriginDestinationList(),
                          getDetailsResponse.getProductDetailsList().getProductDetails().get(0).getFareList());

这里setDetailsFromSegment()是我的方法,我想在使用java 8调用方法之前检查参数是否为null。

1 个答案:

答案 0 :(得分:0)

如果可能的话,你应该避免空检的必要性。

如果您可以更改getFareList()public void testMethod(Map<String, ?> settings) { this.xyzkey = (String) settings.get(xyzkey); settings.put("xyzkey" ,settings.get(xyzkey)+"test")); } ,则应该让他们返回Webpack source map issue。如果您没有返回列表,则可以考虑使用Collections.emptyList()。但要小心在哪里使用和可选和不在哪里。请参阅示例java.util.Optional

如果无法更改方法的返回值,则必须在调用方法之前执行检查。 Should Java 8 getters return optional type?在这里可能会有所帮助。

除此之外,由于方法链过多,您的代码会出现问题。您可能需要检查每个方法的返回值。而且很难读懂。我不会使用“x”作为变量名; - )。