在我的Android应用程序中,我有这段代码
private Date getTimeout() {
String date = preferences.getString(TIMEOUT, null);
SimpleDateFormat timeFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
if (IsNullOrEmpty(date)) {
return null;
}
try {
Date timeout = timeFormat.parse(date);
return timeout;
} catch (ParseException e) {
e.printStackTrace();
return null; //what is this??
}
}
当我调试我的应用程序时,我得到一个奇怪的结果,它获取字符串,它执行解析,但不返回解析的值。相反,它跳转到catch块中的return语句。这是照片中的样子。 我们可以看到,timeout对象是正常实例化的,因此解析完成没有错误。那么为什么它会跳转到return null语句呢?
在这里,我上传了一个我的调试视频,这可能很有用。
https://www.youtube.com/watch?v=oW9hWEnXp2U&feature=youtu.be