最佳实践 - 变量初始化

时间:2014-07-12 15:04:36

标签: java

您更喜欢哪种最佳做法,代码A或代码B?对于代码A,我不需要初始化变量,但每次调用getNum()函数时,我都需要一次又一次地调用它。它缺乏内存管理,可读性,代码管理和可用性。与代码B相比,我只为num定义变量book.getNum(),每次我想使用book.getNum()函数时,我只调用变量num。这对实时有问题吗?

代码A:

if( book.getNum() != 0){
//----
}

代码B:

int num = book.getNum();
if( num != 0){
//----
}

4 个答案:

答案 0 :(得分:6)

如果您要重复使用此值,则code B会更好。如果您只想使用此值一次,那么Code A会更好。

保持简单。如果没有变量,请不要引入变量。

<强>更新

在某些情况下,您可以引入一个变量来保存复杂表达式的值,以使代码更具可读性。但对于简单的情况,就像你描述的那样,上述方法是正确的。

答案 1 :(得分:3)

B,以获得更好的代码可读性和维护性。

通过使用任何虚拟值交换函数调用(getNum())来测试函数也更容易..

考虑未来,未来可能你想扩展这个代码,而且更容易使用num而不是getNum()......

答案 2 :(得分:2)

编译器优化了这一点。两种方式基本相同。

我建议使用此唯一的情况:

int num = book.getNum();
if( num != 0){
   //----
}

是在后面的代码中使用book.getNum()的时候。 numbook.getNum()短的事实在这种情况下是一个优势,只是从使代码更具可读性的角度来看。

答案 3 :(得分:-2)

一个。 因为在b中你又在内存中添加了一个变量。 。 。 。 但它只适用于规模很大的应用程序。

相关问题