OVH Cloud OVH Cloud

Question basique de design

4 réponses
Avatar
Lionel
Bonjour,

Je dois faire une méthode qui retourne une collection contenant des String
de A à Z.
Quelle est la meilleure solution, et pour quelles raisons ?

1-
collection.add("A");
collection.add("B");
...
collection.add("Z");


2-
une boucle entre 'A' et 'Z' qui fait des
collection.add(String.valueOf(monChar));


Merci pour vos avis :)

4 réponses

Avatar
Pif

Bonjour,

Je dois faire une méthode qui retourne une collection contenant des String
de A à Z.
Quelle est la meilleure solution, et pour quelles raisons ?

1-
collection.add("A");
collection.add("B");
....
collection.add("Z");


2-
une boucle entre 'A' et 'Z' qui fait des
collection.add(String.valueOf(monChar));


Merci pour vos avis :)


pour moi, ca prend environ 3 millisec pour la machine, alors la question

c'est uniquement combien tu as de lettres, à mon avis ca va plus vite
de rédiger un for.... ca fait trois lettre et avec un mon commmentaire
ca evite de faire du scrolling dans ledocument, mais je crois pas qu'on
puisse recommander ou déconseille une des deux solutions...

Avatar
Pif
tu as oublié deux solutions : le tableau de char, alors ca c'est élégent
! on le rédige en une ligne avec un {a..z} et c'est optimal en temps et
mémoire !

sinon, t'as le framework trove par exemple qui te propose les
collections pour les primitives, du coup, une collection de char est
mieux qu'une collection de Character; ca prend beaucoup moins de mémoire
si tu dois l'instancier de nombreuses fois !
Avatar
Lionel
Pif wrote:
tu as oublié deux solutions : le tableau de char, alors ca c'est
élégent ! on le rédige en une ligne avec un {a..z} et c'est optimal
en temps et mémoire !


En fait la collection renvoyée est utilisée dans un <html:options> de
struts.
Il aime pas les char ni les Characters apparemment.
J'ai suivi ton idée, j'ai fait un final static String[] lettres = {"A",
...., "Z"};
Merci !
:)

Avatar
Bruno Jouhier
La boucle, bien évidemment (plus compact et au moins on ne risque pas de se
tromper: oublier, inverser, dupliquer des lettres).

Bruno.

"Lionel" <SPAMcoollATfreePOINTfr> wrote in message
news:42663faf$0$14446$
Bonjour,

Je dois faire une méthode qui retourne une collection contenant des String
de A à Z.
Quelle est la meilleure solution, et pour quelles raisons ?

1-
collection.add("A");
collection.add("B");
...
collection.add("Z");


2-
une boucle entre 'A' et 'Z' qui fait des
collection.add(String.valueOf(monChar));


Merci pour vos avis :)