请问 关于以下的代码中 假设 parseEntity2(localJSONArray2) 返回的是 List<Data.ItemEntity>类型的数据。
如果 没有 在最后一行代码 添加return null 的话, 就会错误提示:
This method must return a result of type List<Data.ItemEntity>
但是 在try里边已经 有 return parseEntity2(localJSONArray2); 的啦,
请问 在代码的最后一行 写 return null;这样 会不会出现什么问题呢?还是应该怎么处理呢?
麻烦知道的朋友帮忙回复,谢谢啦
public List<Data.ItemEntity> doParseJSONObject(JSONObject paramAnonymousJSONObject)
{
try
{
JSONArray localJSONArray2 = paramAnonymousJSONObject.getJSONArray("data");
return parseEntity2(localJSONArray2);
}
catch (JSONException localJSONException)
{
localJSONException.printStackTrace();
}
// return null;
}
180 阅读
没有最后那个return null;的话,catch语句块里面没有返回值所以会报错,就是说有返回值的函数必须在每个分支都有返回值
二楼说的没错,之所以让你最后一行添加return 就是因为如果try 的执行模块异常了,就不会执行return,会往下走,但是你的下面没有return 肯定就会报错。你在case 里加return 也同样就不会报错。像下面这样写也可以,当然你在调用这个方法的地方肯定要添加返回空值的判断了,然后对其处理。java 基础不是很好,建议去看看return 方法的基础。