考虑以下内容:
1.
而且:
2.
1.
for (final Bar a : bars) {
for (final Foo f : foos) {
doSomethingWith(f.foo(), a.bar());
}
}
而且:
2.
for (final Bar a : bars) {
final Object bar = a.bar();
for (final Foo f : foos) {
doSomethingWith(f.foo(), bar);
}
}
这种优化真的有用吗?还是编译器会自动进行优化?
如果bar()是一个getter(例如getBar()),你的答案会改变吗?
如果我要针对Android开发,你的答案会改变吗?
a
,a.bar()
总是返回相同的值? - Thomas Padron-McCarthy