ホームページ >Java >&#&チュートリアル >Java で ArrayList に対して交差演算と結合演算を実行するにはどうすればよいですか?

Java で ArrayList に対して交差演算と結合演算を実行するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-12-17 21:10:24828ブラウズ

How to Perform Intersection and Union Operations on ArrayLists in Java?

Java での ArrayList の交差と結合

質問:

交差と結合を実行する方法Java で ArrayList を操作しますか?質問の拡張は、集合論のコンテキストにおけるファイル フィルタリングに対する ArrayList の適用可能性に関するものです。

回答:

ArrayList には、交差または交差のための組み込みメソッドがありません。連合。簡単な実装を以下に示します。

import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;

public class ArrayListOperations {

    public static void main(String[] args) {
        List<String> list1 = new ArrayList<>(Arrays.asList("A", "B", "C"));
        List<String> list2 = new ArrayList<>(Arrays.asList("B", "C", "D", "E", "F"));

        System.out.println(intersection(list1, list2));
        System.out.println(union(list1, list2));
    }

    public static <T> List<T> intersection(List<T> list1, List<T> list2) {
        List<T> list = new ArrayList<>();

        for (T t : list1) {
            if (list2.contains(t)) {
                list.add(t);
            }
        }

        return list;
    }

    public static <T> List<T> union(List<T> list1, List<T> list2) {
        Set<T> set = new HashSet<>();

        set.addAll(list1);
        set.addAll(list2);

        return new ArrayList<>(set);
    }
}

ファイル フィルタリングについて:

ファイルの数が比較的少ない場合、ファイル フィルタリングに ArrayList を使用するのが適切です。ただし、大規模なデータセットの場合、HashSet や TreeSet などのより効率的なデータ構造を検討することは、実行時のパフォーマンスを最適化するために有益です。

以上がJava で ArrayList に対して交差演算と結合演算を実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。