将方法调用放在参数中与创建变量并传递它

时间:2016-11-30 14:11:00

标签: java performance

将值传递给方法时,

  1. 直接在其中放置一个方法调用,返回要传递的所需值
  2. 或创建变量并通过相同的方法调用获取其中的值,并将值放在参数中。

        //first approach
        methodToCall(methodReturnValue());
        //second approach
        int variable=methodReturnValue();
        methodToCall(variable);
    
  3. 哪种技术更好?

    在我看来,我认为第一种技术比第二种更好,因为第二种技术要求你创建一个额外的变量,这肯定会占用内存空间。另一个方面是,创建一个变量会导致CPU循环到内存,而返回值存储在寄存器而不是内存(RAM)中,因此它也会减少内存读取周期。

1 个答案:

答案 0 :(得分:0)

选项1没有任何“附加”运行时“惩罚”;没有分配变量,没有什么需要进一步处理。

另一方面,选项2 更容易阅读(因为方法调用的顺序是自上而下,而不是从右到左);它允许您进一步使用该结果变量;例如,用于跟踪或其他功能调用。

因此:答案是 - 这里没有更好的解决方案。只是具有不同利弊的不同选择。