为什么我会收到错误,是因为我在if检查后错过了一个回复?我可以通过将最后一次返回设置为空来解决它
public static String whoWins(rockPaperScissors user, rockPaperScissors computer){
if(user == ROCK && computer == SCISSORSS){
return "user wins";
}
if(user == PAPER && computer == ROCK){
return " user wins";
}
if(user == SCISSORSS && computer == PAPER){
return "user wins";
}
if(computer == ROCK && user == SCISSORSS){
return "computer wins";
}
if(computer == PAPER && user == ROCK){
return "computer wins";
}
if (computer == SCISSORSS && user == PAPER){
return "computer wins";
}
}
答案 0 :(得分:2)
您收到错误,因为您的方法并不总是返回结果。例如,如果gdrive list -q "name = 'My folder name' and mimeType='application/vnd.google-apps.folder' and trashed=false"
会发生什么?
在我看来,最简单的处理方法是抛出异常,因为你不应该到达最后一行。 gdrive list
是一个很好的候选者,因为问题将来自传递给方法的无效参数。
user == null