这是"正确"的方法(if语句)

Ric*_*lor 6 java android

我有很多这些谎言,我想知道我是否会遇到任何麻烦 - 或性能问题.

我有方法A:


MyClass monkey;
...
if(monkey != null) {
 ...
}

或方法B:


boolean hasMonkey; //This is set to TRUE when monkey is not null
MyClass monkey;
...
if(hasMonkey) {
 ...
}

在功能层面上,它们都做同样的事情.现在,我正在使用方法A.这是一种糟糕的做事方式吗?哪个会表现得更好?

Vee*_*Arr 19

方法A是我所看到的"常见"案例.方法B引入了数据一致性问题(什么是hasMonkey未正确设置?),而方法A仅依赖于对象本身来确定其有效性.在我看来,方法A远非优越.

  • 为清楚起见,你可以使用一个方法`boolean hasMonkey()`来返回`monkey!= null`. (2认同)