je suis tombé à travers une présentation (dalvik-vm-internals) sur Dalvik VM, en ce qu'il est mentionné comme pour les boucles ci-dessous, nous avons utilisation (2) et (3) et éviter (7).boucles efficacité
(1) for (int i = initialiseur; i> = 0; i--)
(2) limite int = limite de calculer; pour (int i = 0; i < limite; i ++)
(3) Type [] array = get array; pour (Type obj: array)
(4) for (int i = 0; i < array.length; i ++)
(5) for (int i = 0; i < this.var; i ++)
(6) pour (int i = 0; i < obj.size(); i ++)
(7) liste Iterable = obtenir la liste; pour (Type obj: liste)
Commentaires: Je pense que (1) et (2) sont les mêmes. (3) (4) chaque fois qu'il doit calculer la longueur de tableau, donc cela peut être évité (5) (6) même que (4), en calculant la taille à chaque fois (7) a demandé d'éviter comme liste est d'un type Iterable ??
un de plus, dans le cas si nous disposons de données infinies (en supposant que les données sont à venir comme un flux) qui boucle devrait-on envisager pour une meilleure efficacité?)
demande vous plaît commenter ce ...
Cette présentation date de 2008, bien avant l'introduction du compilateur JIT dans Froyo. http://developer.android.com/guide/practices/design/performance.html#foreach est plus récent mais je pense que ce document est aussi un peu démodé. (Une version mise à jour devrait apparaître sur ce site lorsque la prochaine version sortira.) – fadden
Merci pour le lien !! cela a été utile – Vamsi