以下面的代码片段为例:
public int demoMethod(){
SomeClass object= getItFromSomewhere();
return object.getResult();
}
我们也可以直接返回getItFromSomewhere().getResult()
。我的问题是“对象”的定义是否会降低性能?而且在某些情况下,可能临时局部变量非常复杂,比如
SomeClass object = otherClassObject.getMethod1().getMethod2().getMethod3().getMethod4();
return object.getMethod5();
如果我不使用临时“对象”,语句将很难阅读,你们如何处理这种情况?
最佳答案
Afaik 将被 jit 彻底删除。因此,引入额外的局部变量来简化表达式应该不会对性能产生任何影响。
PS:长表达式 a.d.b.c 被鲍勃叔叔称为“火车残骸”。当您遇到像 NPE 这样的异常时,它们很难阅读并且需要 PITA 来调试。
关于java - 局部变量的定义会降低应用程序的性能吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23930380/