Home >Java >javaTutorial >How Can I Efficiently Combine Two Lists in Java?

How Can I Efficiently Combine Two Lists in Java?

Susan Sarandon
Susan SarandonOriginal
2024-12-08 20:28:10806browse

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!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn