Home >Java >javaTutorial >How Can I Efficiently Combine Two Lists in Java?
Joining Two Lists in Java Efficiently
Combining multiple lists into a single collection is a common task in Java. While the provided code segment using addAll() is functional, it involves creating a new list and iterating over both original lists, which can be inefficient for large datasets.
Java 8 and Later:
For Java 8 and subsequent versions, a more concise and efficient approach is leveraging Java streams:
List<String> newList = Stream.concat(listOne.stream(), listTwo.stream()) .collect(Collectors.toList());
This code creates a new stream by concatenating the streams of both lists and collects the elements into a new list named newList. It preserves the original lists and performs the operation lazily, minimizing memory consumption and improving performance.
Java 16 and Later:
In Java 16 and later, a simplified version of the stream-based solution can be used:
List<String> newList = Stream.concat(listOne.stream(), listTwo.stream()).toList();
This code utilizes the toList() method introduced in Java 16, which creates a new list directly from the stream without the need for an explicit collector.
The above is the detailed content of How Can I Efficiently Combine Two Lists in Java?. For more information, please follow other related articles on the PHP Chinese website!