我正在使用Intellij 14,我在调试和检查断点时遇到了一些非常奇怪的东西,比如下面的代码:
public SQLiteDatabase getDB()
{
try {
return SQLiteDatabase.openDatabase(DB_PATH + DB_NAME, null, 0);
}
catch(SQLiteException ex)
{
Log.e("DATABASE",
"Failed to open database",
ex);
}
finally {
return null;
}
}
如果try范围中没有问题,那么它会返回,但在我的情况下,它只是正常传递try范围,然后直接进入finally范围。这是一个场景,我曾经遇到的另一个场景,这是第二个场景:
public static boolean isEmpty(String str)
{
if(str != null && str.trim().length() > 0 && !str.equals(""))
{
return false;
}
return true;
}
我确保str不是空的或null或任何东西,但是在调试它时再次进入范围并运行 return false; 但是它会转到返回true ...... 紧随......它让我发疯,因为虽然我没有使用断点进行调试但它不起作用,但正常运行该项目是有效的。
我无法弄清楚为什么会这样......这让我发疯了。
提前致谢。