Imprimer les éléments d'un tableau avec une virgule entre les éléments sauf le dernier mot
J'ai imprimé des éléments à partir d'une liste de tableau, je veux avoir une virgule entre chaque mot, sauf le dernier mot. Je fais comme ceci:
for (String s : arrayListWords) {
System.out.print(s + ", ");
}
Comme vous le comprenez, il permet d'imprimer les mots: "un, deux, trois, quatre,"
et le problème, c'est la dernière virgule, comment puis-je résoudre ce problème? Toutes les réponses appréciés!
Meilleures salutations,
Erica
source d'informationauteur Eri. | 2013-08-16
Vous devez vous connecter pour publier un commentaire.
Imprimer le premier mot sur son propre si elle existe. Ensuite, imprimez le motif que la virgule d'abord, puis l'élément suivant.
Avec un
List
il est préférable d'utiliser unIterator
Je voudrais écrire de cette façon:
Si arrayListWords a deux termes, il doit imprimer
A,B
À L'Aide De Java 8 Flux:
Lors de l'itération, vous pouvez ajouter le
String s
à laStringBuilder
et à la fin, vous pouvez supprimer le dernier de 2 caractères, qui est un supplément de,
et un espace (res.length() -2
)Vous pouvez utiliser une fonction standard de java.util emballage et retirez le bloc de guillemets au début et à la fin.
La sortie:
Le résultat est: Aplha, Bêta, Gamma
Vous pouvez utiliser un
Iterator
sur leList
pour vérifier si il y a plus d'éléments.Vous pouvez ensuite ajouter la virgule seulement si l'élément n'est pas le dernier élément.
Mais il est beaucoup plus facile d'utiliser une 3ème partie de la bibliothèque comme Goyave de le faire pour vous. Le code devient alors:
Vous pouvez essayer ce
Voici ce que je viens avec:
bien sûr, nous pouvons utalise
StringBuilder
mais de toutes les solutions, j'aime@Mav
répondre comme il est plus efficace et plus propre.Avec Java 8, il a obtenu beaucoup plus facile, pas besoin de 3ème parties -
Suffit d'utiliser la méthode toString ().