我有以下方法
public Message JavaMethod(String id1, String id2)
其中我需要调用 Dao 类的方法来验证具有提供的 Id 的用户是否存在,如果不存在,则使用以下方法创建一条详细说明在数据库中找不到的 Id 的消息:
createMessage("Message string",Enum.TYPE,IdofMissingUser);
一开始我想这样做:
public Message JavaMethod(String id1, String id2) {
if(Dao.findUser(id1) == null || Dao.findUser(id2) == null){
return createMessage("Error",Enum.Error,id1);
}else{
//do some other stuff
}
}
但显然这样我就不会知道哪个 id 还没有找到。
所以我继续创建了一个丑陋的 if else 循环:
public Message JavaMethod(String id1, String id2) {
if (Dao.findUser(id1) == null) {
return createMessage("Error", Enum.Error, id1);
} else if (Dao.findUser(id2) == null) {
return createMessage("Error", Enum.Error, id2);
} else {
// Do stuff after veryfing users exists
return createMessage("All OK", Enum.OK, messageData);
}
}
但我并不确定这是解决这个基本问题的最佳解决方案。
在这种情况下你们会推荐什么?
最佳答案
您可以将 id 包装在列表中并使用 for
循环:
public Message someMethod(String id1, String id2) {
for (String id: Arrays.asList(id1, id2)) {
if (Dao.findUser(id) == null) {
return createMessage("Error", Enum.Error, id);
}
}
// Do stuff after verifying users exists
return createMessage("All OK", Enum.OK, messageData);
}
关于java - 检查 Java 中 2 个方法的具体结果的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37022782/