Commons-collections-merge-sort

提供:Dev Guides
移動先:案内検索

Apache Commonsコレクション-マージと並べ替え

Apache Commons CollectionsライブラリのCollectionUtilsクラスは、幅広いユースケースをカバーする一般的な操作のためのさまざまなユーティリティメソッドを提供します。 定型コードの記述を避けるのに役立ちます。 同様の機能がJava 8のStream APIで提供されるようになったため、このライブラリはjdk 8より前に非常に便利です。

ソートされた2つのリストをマージする

CollectionUtilsのcollat​​e()メソッドを使用して、ソート済みの2つのリストをマージできます。

宣言

以下はの宣言です

  • org.apache.commons.collections4.CollectionUtils.collat​​e()*メソッド
public static <O extends Comparable<? super O>> List<O>
   collate(Iterable<? extends O> a, Iterable<? extends O> b)

パラメーター

  • a -最初のコレクションは、nullであってはなりません。
  • b -2番目のコレクションは、nullであってはなりません。

戻り値

コレクションaおよびbの要素を含む新しいソート済みリスト。

例外

  • NullPointerException -いずれかのコレクションがnullの場合。

次の例は、

org.apache.commons.collections4.CollectionUtils.collat​​e()メソッド。

2つのソートされたリストをマージし、マージされソートされたリストを印刷します。

import java.util.Arrays;
import java.util.List;

import org.apache.commons.collections4.CollectionUtils;

public class CollectionUtilsTester {
   public static void main(String[] args) {
      List<String> sortedList1 = Arrays.asList("A","C","E");
      List<String> sortedList2 = Arrays.asList("B","D","F");
      List<String> mergedList = CollectionUtils.collate(sortedList1, sortedList2);
      System.out.println(mergedList);
   }
}

出力

次の結果が出力されます。

[A, B, C, D, E, F]