Converting List in int[] in Java mit Streams
Die Konvertierung einer List zu einem int[] erfordert oft eine Schleife, was die Frage aufwirft, ob es eine effizientere Methode gibt.
Java 8 führte Streams ein und bot eine praktische Lösung für dieses Problem.
Mit Streams kann die Der Konvertierungsprozess kann vereinfacht werden zu:
int[] example1 = list.stream().mapToInt(i -> i).toArray();
// OR
int[] example2 = list.stream().mapToInt(Integer::intValue).toArray();
Gedanke Prozess
- Streams haben eine toArray()-Methode, die ein Object[] und kein int[] zurückgibt.
- Die Konvertierung von Integer in int im Stream erfordert die Transformation von Stream< ;Ganzzahl> in IntStream, einen Stream, der primitive Typen verarbeitet.
- Die Methode mapToInt() verwendet eine ToIntFunction, die jedes Element von Integer in int umwandelt.
- Integer#intValue kann verwendet werden, um den int direkt zu erhalten Wert oder Unboxing können für die automatische Konvertierung verwendet werden.
- Der abgeleitete Integer-Typ im Lambda kann sein weggelassen, was zu Folgendem führt:
list.stream().mapToInt(i -> i).toArray();
Dieser optimierte Prozess macht Schleifen überflüssig und erhöht die Konvertierungseffizienz.
Das obige ist der detaillierte Inhalt vonWie kann ich mithilfe von Streams eine Liste in Java effizient in ein int[] konvertieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!
Stellungnahme:Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn