Je sais que c'est une question de débutant, mais y a-t-il des équivalents aux opérations sur les chaînes de C # en Java?
Plus précisément, je parle de String.Format
et String.Join
.
Je sais que c'est une question de débutant, mais y a-t-il des équivalents aux opérations sur les chaînes de C # en Java?
Plus précisément, je parle de String.Format
et String.Join
.
L'objet Java String a une méthode format
(à partir de 1.5), mais aucune méthode join
.
Pour obtenir un tas de méthodes utilitaires String non incluses, vous pouvez utiliser org.apache.commons.lang.StringUtils .
String.format . En ce qui concerne rejoindre, vous devez écrire le vôtre:
static String join(Collection<?> s, String delimiter) {
StringBuilder builder = new StringBuilder();
Iterator<?> iter = s.iterator();
while (iter.hasNext()) {
builder.append(iter.next());
if (!iter.hasNext()) {
break;
}
builder.append(delimiter);
}
return builder.toString();
}
Ce qui précède vient de http://snippets.dzone.com/posts/show/91
La goyave vient avec la classe Joiner
.
import com.google.common.base.Joiner;
Joiner.on(separator).join(data);
Comme de Java 8, join()
est désormais disponible sur les deux méthodes de la classe sur la classe String. Dans les deux cas, le premier argument est le délimiteur.
Vous pouvez passer individuels CharSequence
s comme des arguments supplémentaires:
String message = String.join(", ", "Antimony", "Arsenic", "Aluminum", "Selenium");
// "Antimony, Arsenic, Alumninum, Selenium"
Ou vous pouvez passer un Iterable<? extends CharSequence>
:
List<String> strings = new LinkedList<String>();
strings.add("EX");
strings.add("TER");
strings.add("MIN");
strings.add("ATE");
String message = String.join("-", strings);
// "EX-TER-MIN-ATE"
TextUtils.join est disponible sur Android
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.