Salut,
Sinon, ici, au lieu d'une List il vaudrait mieux utiliser un Set.
Enfin ca dépend de la taille de son tableau aussi.
Résultats (avec le code de adiGuba et 1000 éléments) :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| Boucle : true : 123750644 / 123 ms
Contains (list) : true : 109326744 / 109 ms
Contains (set) : true : 1436774 / 1 ms
Boucle : true : 107048242 / 107 ms
Contains (list) : true : 96554730 / 96 ms
Contains (set) : true : 401728 / 0 ms
Boucle : true : 104875340 / 104 ms
Contains (list) : true : 98991911 / 98 ms
Contains (set) : true : 403683 / 0 ms
Boucle : true : 103315924 / 103 ms
Contains (list) : true : 95155948 / 95 ms
Contains (set) : true : 397816 / 0 ms
Boucle : true : 101289689 / 101 ms
Contains (list) : true : 95680876 / 95 ms
Contains (set) : true : 397816 / 0 ms
Boucle : true : 105086540 / 105 ms
Contains (list) : true : 95099796 / 95 ms
Contains (set) : true : 397816 / 0 ms
Boucle : true : 102878997 / 102 ms
Contains (list) : true : 96182057 / 96 ms
Contains (set) : true : 393626 / 0 ms
Boucle : true : 101515137 / 101 ms
Contains (list) : true : 94746399 / 94 ms
Contains (set) : true : 396978 / 0 ms |
Bon par contre il n'y a pas de Arrays.asSet ...
Donc ça ferait quelque chose comme ça :
Set<Integer> set = new HashSet<Integer>(Arrays.asList(tab));
La création du Set est plus lente du coup si on fait comme cela.
@+
Partager