我有一个联系 Web 服务、解析并返回自定义对象数组的方法。有时该服务还会在响应中包含一些错误消息。
我希望我的方法在返回自定义对象数组时,应该能够在类似于输出参数的内容上更新错误消息。
Java 似乎不支持 out 参数。在 Objective-C 中,许多方法将像 &error 这样的指针作为最后一个参数来更新错误。
有没有办法用Java实现这一点?
最佳答案
一种方法是将可变对象(例如列表)传递到您的方法中,并让该方法更改其内容。
例如,在这种情况下,您可以传递一个空的错误消息列表。如果没有错误,列表将返回空;否则,该方法会将它找到的任何错误插入到列表中,并且调用者将能够检索它们:
public CustomObject[] retrieve(List<ErrorObject> errors) {
...
}
来电者:
...
List<ErrorObject> errors = new ArrayList<ErrorObject>();
CustomObject[] results = wrapper.retrieve(errors);
if (results == null) {
for (ErrorObject eo : errors) {
...
}
}
关于java 方法返回数组或 nil 并可选择提供错误消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15689875/