Wie kann man in Java String Arrays als Aufzählung in der Konsole ausgeben?
gibt es außer
for(int i=o; i< array.length; i++) {
System.out.print(array[i] + ","}
noch andere Möglichkeiten
2 Antworten
String[] array = new String[] { "aaa", "bbb", "ccc", "ddd", "eee" };
System.out.println(Arrays.toString(array));
Würde das ausgeben: [aaa, bbb, ccc, ddd, eee]
Da kann man auch noch ein wenig rumbasteln und die Klammern wegnehmen:
String[] array = new String[] { "aaa", "bbb", "ccc", "ddd", "eee" };
System.out.println(Arrays.toString(array).replaceAll("[\\[\\]]", ""));
Hier ist aber der Nachteil, dass eckige Klammern in einem String auch entfernt werden. Da kann man auch substring etc einsetzen, ist aber wirklich ein Herumgebastel.
Ansonsten gibt es natürlich andere Schreibweisen, im Kern ists aber dasselbe Prinzip.
System.out.println(Arrays.toString(array).replaceAll("[\\[ \\]]", ""));
Einfach beim Regex ein Leerzeichen einfügen, dann werden auch diese entfernt (wobei diese Lösung auch die letztendlichen Strings beeinflusst, was nicht gerade optimal ist)
Ginge das theoretisch auch als string builder? Bzw wie kommt man auf "[\\[ \\]]
Mit dem String Builder wäre es in etwa gleich wie deine bisherige Lösung.
Bzw wie kommt man auf "[\\[ \\]]
Das ist eine Regular Expression. Damit lassen sich gewisse Muster in Strings "matchen". Wirst du später sicherlich auch mal gebrauchen.
Naja string builder macht die Lösung vorher und gibt es in einem einzigen System out print aus - vllt nimmt der compiler das an. Aber ich muss halt irgendwie das komma am Ende wegkriegen
wäre das nicht unnötige schreibarbeit? java.util.Arrays müsste auch importiert werden
Ja ists schon ein wenig. Allerdings war ja die Frage nach anderen Möglichkeiten xD
das problem ist, für den test compiler ist nacheinander mit for system.out.print aufrufen anscheinend zu langsam, sodass er meint dass überhaupt keine ausgabe erfolgt ist
for(String s : array) {
System.out.print(s + ", ");
}
so gehts schneller
ginge das auch ohne leerzeichen?