优化并不总是一蹴而就。
一. 合理减少代码递进层次
1. for循环场景
调整前:
public void fun(List<T> l) {
for(T t : l) {
doThing1(t);
if (condition) {
doThing2(t);
}
doThing3(t);
}
}
调整后:
public void fun(List<T> l) {
for(T t : l) {
fun(t);
}
}
/*
* 根据实际使用情况来定private或者public
*/
private/public void fun(T t) {
doThing1(t);
if (condition) {
doThing2(t);
}
doThing3(t);
}
减少一层递进的同时,还能够额外提供一个里层的API。