я наткнулся через презентацию (dalvik-vm-internals) на Dalvik VM, в том, что он упоминается как для ниже петли, мы имеем использовать (2) и (3) и избегать (7).петли эффективность
(1) для (INT I = инициализатор; я> = 0; i--)
(2) предел INT предел = подсчет; для (int i = 0; i < limit; i ++)
(3) Тип [] array = get array; для (Тип OBJ: массив)
(4) для (INT I = 0; я < Array.length; я ++)
(5) для (INT I = 0; я < this.var; я ++)
(6) для (INT I = 0; я < obj.size(); я ++)
(7) Iterable список = получить список; для (Тип obj: список)
Комментарии: Я чувствую, что (1) и (2) одинаковы. (3) (4) каждый раз, когда ему приходится вычислять длину массива, поэтому этого можно избежать (5) (6) то же, что и (4), каждый раз рассчитывая размер (7) список имеет тип Iterable?
еще один, в случае, если мы имеем бесконечные данные (предположим, данные поступают в виде потока), какой цикл следует учитывать для повышения эффективности?)
запрос вы Прокомментируйте это ...
Эта презентация с 2008 года, задолго до того, как компилятор JIT был представлен во Фройо. http://developer.android.com/guide/practices/design/performance.html#foreach новее, но я думаю, что этот документ также немного устарел. (Обновленная версия должна появиться на этом сайте, когда следующий выпуск исчезнет.) – fadden
Спасибо за ссылку !! что было полезно – Vamsi