0

我想知道,做这样的事情会更有效吗:

   setVisible(false) // if the component is invisible

或像这样:

   if(isVisible()){
      setVisible(false)
   }
4

3 回答 3

6

这与效率无关。使用第一个,它更简单,并且可能已经包含 setVisible() 方法中的可见性检查。

当你编写代码时,不要试图考虑效率,尤其是在像这样可笑的微不足道的情况下。您在多 GHz 计算机上运行,​​因此您只是在像这样的微优化上浪费时间。

于 2013-10-31T10:12:12.513 回答
3

setVisible()正如JComponent实现的那样,已经调用isVisible()了,因此添加冗余调用并不是更有效。无论如何,它真的不可能成为任何一种性能瓶颈。

于 2013-10-31T10:13:09.923 回答
0

您的第二个示例有意义的唯一情况是打开和关闭可见性。

if(isVisible()){
   setVisible(false);
}else{
   setVisible(true);
}
于 2013-10-31T11:06:18.370 回答