Javaでキーによって一意な要素を持つリストを作成する方法


方法1: Setを使用する方法

import java.util.*;
public class Main {
    public static void main(String[] args) {
        List<String> list = Arrays.asList("apple", "banana", "apple", "orange", "banana");

        Set<String> uniqueList = new HashSet<>(list);

        for (String element : uniqueList) {
            System.out.println(element);
        }
    }
}

方法2: Streamを使用する方法

import java.util.*;
import java.util.stream.Collectors;
public class Main {
    public static void main(String[] args) {
        List<String> list = Arrays.asList("apple", "banana", "apple", "orange", "banana");

        List<String> uniqueList = list.stream()
                .distinct()
                .collect(Collectors.toList());

        for (String element : uniqueList) {
            System.out.println(element);
        }
    }
}

方法3: LinkedHashMapを使用する方法(順序を保持する場合)

import java.util.*;
public class Main {
    public static void main(String[] args) {
        List<String> list = Arrays.asList("apple", "banana", "apple", "orange", "banana");

        Map<String, Boolean> map = new LinkedHashMap<>();
        for (String element : list) {
            map.put(element, true);
        }

        List<String> uniqueList = new ArrayList<>(map.keySet());

        for (String element : uniqueList) {
            System.out.println(element);
        }
    }
}

これらの方法を使用することで、リスト内の重複をキーに基づいて一意にすることができます。選択した方法に応じて、コード例を使用してリストを重複排除することができます。