List<String> solList = new ArrayList<String>();
solList.add("num1");
solList.add("num2");
StringBuilder result = new StringBuilder();
for (String a : solList)
{
result.append(a).append(", ");
}
String withoutLastComma = result.substring(0, result.length() - ",
".length());
System.err.println(withoutLastComma);
Ich möchte das letzte Komma entfernen, ich benutze Substring, wie kann ich diesen Code besser werden?Wie entferne ich letzte Symbole?
Verwenden Sie String-Dienstprogrammmethoden wie "StringUtil.join" zum Verketten von Elementen in einem Array oder einem Auflistungsobjekt. Konsultieren Sie den "StringUtil.join" Eintrag der "StringUtil API".
Zum Beispiel: StringUtils.join(["e", "f", "g"], "--") // => "e--f--g
Wenn Sie wollen einfach nur Kommas hinzufügen möchten, eine einfache for-Schleife mit einer Länge verwenden -2 – Sagar
Sie können mit allem, was zu tun [ 'String.join'] (http : //docs.oracle.com/javase/8/docs/api/java/lang/String.html#join-java.lang.CharSequence-java.lang.Iterable-) – ajb
Sie können einfach 'result.setLength (result.length() - 1) '. Oder, anstatt die einfache 'for'-Schleife zu verwenden, können Sie die' solList.iterator() 'und Schleife über sie" manuell "(' while (iterator.hasNext()) {... '), und das lässt Sie überprüfen innerhalb der Schleife, ob es ein nächstes Element gibt - also können Sie das Komma einfach nicht hinzufügen, wenn Sie das letzte Element sind. (Oder, wie ajb darauf hingewiesen hat, verwenden Sie den Bibliotheksaufruf, der dies für Sie tut.) – yshavit