J'ai vu ça il y a longtemps mais j'ai oublié.
Je voudrias faire qqchose comme
String machaine = fabrique ("-",10);
pour faire une chaine "-----------"
J'ai vu ça il y a longtemps mais j'ai oublié.
Je voudrias faire qqchose comme
String machaine = fabrique ("-",10);
pour faire une chaine "-----------"
je crois que tu peux faire
String s = "-";
s *=10;
EDIT : désolé je me suis trompé (c'est pas en java), mais je n'arrive pas à supprimer mon message. Tant pisj'assume
Salut,
Il suffit de passer par un StringBuffer (ou StringBuilder en Java 5.0) :
a++
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 public static String fabrique(String s, int count) { StringBuffer buf = new StringBuffer(count*s.length()); for (int i=0; i<count; i++) { buf.append(s); } return buf.toString(); }
Oui, c une solution.
Mais j'aurai aimé un truc plus simple du genre String toto = new String('-',10);
(mais ce constructeur n'existe pas...)
à mon avis t'as pas le choixEnvoyé par zev
![]()
je réfléchissais à une solution avec un tableau de char mais bon c'est pas mieux (voir pire plutôt)
Pourquoi ne veux tu pas utiliser la solution proposée ? Il y a une raison ?
Envoyé par in
Pourquoi ca ? Au contraire c'est plus efficace a mon avis.
Moi j'aurais ecris ca:
A mon avis cote performances c'est bcp plus rapide que le coup du StringBuffer.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 public static String fillStringWith(char aChar, int aLength) { char buf[] = new char(aLength); Arrays.fill(buf, aChar); return new String(buf); }
Bulbo![]()
Pourquoi vouloir une solution "plus simple" alors que celle proposée remplie ton exigence de résultat ?Envoyé par zev
![]()
Ben parce que ce n'est pas joli, ça fait trop de lignes![]()
Ce serait comme de splitter une date avec des substring et compagnie pour l'afficher plutot que d'utiliser un simpledateformat.
Mais merci quand même pour la proposition.![]()
Partager