ホームページ > Java > &#&チュートリアル > オリジナルを変更せずに JDK のみを使用して 2 つの Java リストを連結するにはどうすればよいですか?

オリジナルを変更せずに JDK のみを使用して 2 つの Java リストを連結するにはどうすればよいですか?

Patricia Arquette
リリース: 2024-12-15 06:02:14
オリジナル
485 人が閲覧しました

How Can I Concatenate Two Java Lists Without Modifying the Originals and Using Only the JDK?

変更や外部ライブラリを使用せずに Java でリストを結合する

2 つのリストをマージする場合、多くの場合、リストのみを使用して元のリストを変更しないことが望ましいです。 JDK。ここでは、さまざまなアプローチの包括的な分析を示します:

元の方法:

質問で示されているように、新しいリストを作成し、両方の入力リストから要素をコピーして追加します。新しいリストに追加するのは簡単な方法です:

List<String> newList = new ArrayList<>();
newList.addAll(listOne);
newList.addAll(listTwo);
ログイン後にコピー

JDK 1.3バージョン:

Java 1.3 との互換性のために、Iterator.addAll メソッドを使用できます:

List<String> newList = new ArrayList<>();
newList.addAll(listOne);
newList.addAll(listTwo.iterator());
ログイン後にコピー

Java 8 ストリーム連結:

Java 8 以降では、ストリーム連結により簡潔で効率的な代替案:

List<String> newList = Stream.concat(listOne.stream(), listTwo.stream())
                             .collect(Collectors.toList());
ログイン後にコピー

Java 16 toList メソッド:

Java 16 では、ストリームの収集を簡素化する toList メソッドが導入されています:

List<String> newList = Stream.concat(listOne.stream(), listTwo.stream()).toList();
ログイン後にコピー

一行解決策:

前のアプローチを組み合わせると、ワンライナーが可能になります:

List<String> newList = new ArrayList<>().addAll(listOne).addAll(listTwo);
ログイン後にコピー

注:

これらのメソッドはすべて、元のリストを変更しない、JDK のみを使用する、外部ライブラリに依存しないという指定された条件。提供されるソリューションは、古典的な手法から最新の Java 機能まで多岐にわたり、プラットフォームの互換性やコーディング設定に基づいた柔軟性を提供します。

以上がオリジナルを変更せずに JDK のみを使用して 2 つの Java リストを連結するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート