这是一个场景。何时创建局部变量以及何时调用对象方法?
对象A有一个接收对象的方法。 有2种方法。两者都在做基本相同的事情。
randomCheck1()每次都会向isValid()方法发出调用。
randomCheck2()进行一次调用,然后每次使用本地变量。
Class A
{
randomCheck1(myObject obj)
{
if (obj.getInfo().isValid())
{
:
}
// Do some more work.
if (obj.getInfo().isValid())
{
:
}
// Do some more work.
if (obj.getInfo().isValid())
{
:
}
}
randomCheck2(myObject obj)
{
boolean isValidCheck = obj.getInfo().isValid();
if (isValidCheck)
{
:
}
// Do some more work.
if (isValidCheck)
{
:
}
// Do some more work.
if (isValidCheck)
{
:
}
}
}
这两者之间是否存在性能差异?
是否有一个编码标准,规定如果一个方法需要被调用多次,那么应该创建一个局部变量?
相关:https://stackoverflow.com/questions/39888446/is-it-better-to-call-a-method-on-a-variable-or-chain-it-to-the-constructor – 2017-02-24 12:55:23
谢谢。很多很好的反馈。我相信这里的关键在于潜在价值是否可能改变。 –