源于虚拟机的设计者 Dan Bornstein,从快到慢依次排序如下:
/* * How To Write Faster Loops (after Dan Bornstein, Google Engineer) * * - http://www.youtube.com/watch?v=ptjedOZEXPM * */ /* 1 (最快) */ for (int i = initializer; i >= 0; i--) { ... } //initializer 初始值 /* 2 */ int limit = calculateLoopLimit();//limit 限定值 for (int i = 0; i < limit; i++) { ... } /* 3 */ Type[] array = getMyArray(); for (Type obj : array) { ... } /* 4 */ for (int i = 0; i < array.length; i++) { ... } /* 5 */ for (int i = 0; i < this.var; i++) { ... } /* 6 */ for (int i = 0; i < obj.size(); i++) { ... } /* 7 (最慢) */ Iterable<Type> list = getMyList(); for (Type obj : list) { ... }
作者:laihuan99 发表于2013-5-16 10:53:29 原文链接
阅读:31 评论:0 查看评论