Arrays zusammenfügen: Unterschied zwischen den Versionen

Aus Byte-Welt Wiki
KKeine Bearbeitungszusammenfassung
Zeile 17: Zeile 17:
});
});
</syntaxhighlight>
</syntaxhighlight>
==char[] Arrays zusammenfügen==
In Java 8 gibt es derzeit keine einfache Möglichkeit char[]-Arrays mit Hilfe der Stream-API zusammenzuzfügen.
Eine mögliche Lösung char-Arrays zusammenzufügen ist daher über den Umweg {{JAPI|StringBuilder}}.
<syntaxhighlight lang="java">
char[] c1 = new char[] {'c', 'h', 'a', 'r', '-'};
char[] c2 = new char[] {'A', 'r', 'r', 'a', 'y'};
StringBuilder sb = new StringBuilder();
sb.append(c1).append(c2);
char[] c3 = sb.toString().toCharArray();
//Ausgabe:
System.out.println(java.util.Arrays.toString(c3));
</syntaxhighlight>


==Siehe auch==
==Siehe auch==

Version vom 17. April 2020, 14:55 Uhr

Manchmal hat mal 2 oder mehrere Arrays und es stellt sich die Frage, wie man diese miteinander verknüpft, also z.B. aus 2 Arrays ein einziges macht.

Arrays verketten (bis Java 7)

Arrays verketten (ab Java 8)

Seit Java 8 stehen dem Entwickler mit der Stream-API mächtige Werkzeuge zur Verarbeitung und Filterung von Daten aus Datensammlungen zur Verfügung. So auch zum Verknüpfen von Arrays.

String[] fruits = new String[] {"Apfel", "Birne", "Kirsche", "Himbeere"};
String[] vegetables = new String[] {"Tomate", "Gurke", "Kürbis", "Kartoffel"};
String[] fruitsAndVegetables = Stream.concat(Arrays.stream(fruits), 
      Arrays.stream(vegetables)).toArray(String[]::new);

//Ausgabe:
fruitsAndVegetables.foreach((name) -> {
   System.out.println(name);
});

char[] Arrays zusammenfügen

In Java 8 gibt es derzeit keine einfache Möglichkeit char[]-Arrays mit Hilfe der Stream-API zusammenzuzfügen.

Eine mögliche Lösung char-Arrays zusammenzufügen ist daher über den Umweg StringBuilder.

char[] c1 = new char[] {'c', 'h', 'a', 'r', '-'};
char[] c2 = new char[] {'A', 'r', 'r', 'a', 'y'};
StringBuilder sb = new StringBuilder();
sb.append(c1).append(c2);
char[] c3 = sb.toString().toCharArray();

//Ausgabe:
System.out.println(java.util.Arrays.toString(c3));


Siehe auch