考虑一下用Android Studio编写的简单程序片段:
java - 为什么我不能在某些类型的return语句上设置断点?-LMLPHP

java - 为什么我不能在某些类型的return语句上设置断点?-LMLPHP

当您在函数中放置中断指针时,如果返回类型为布尔值或整数,则android studio会告诉您第一个return语句上没有可执行代码。但是,如果返回类型为String,则可以使用。实际上,对于int和boolean返回类型,如果实际上命中了第一个return语句,调试器将突出显示第二个return语句。这显然是错误的。我试过几个项目,这种行为是一致的。

我用相同的代码在Eclipse中编写了一个普通的Java应用程序。我看不到此错误发生。我不确定这是否是Android Studio IDE错误,或者那里确实没有可执行代码。如果那里确实没有可执行代码,为什么呢?

最佳答案

这似乎是intellij为您优化代码的结果。

if (time % 2 == 0) {
  return true;
}
return false;


可以写成

return time % 2 == 0;


请注意,屏幕快照中的if上有一个“提示”,很可能是“简化”,以进行此转换。

09-12 15:24