-
シンプルな方法:
import java.util.*; public class ListToMapExample { public static void main(String[] args) { List<String> list = Arrays.asList("apple", "banana", "apple", "orange", "banana", "apple"); Map<String, Integer> map = new HashMap<>(); for (String element : list) { map.put(element, map.getOrDefault(element, 0) + 1); } System.out.println(map); } }
出力結果:
{orange=1, banana=2, apple=3}
-
Java 8のストリームを使用する方法:
import java.util.*; import java.util.stream.Collectors; public class ListToMapExample { public static void main(String[] args) { List<String> list = Arrays.asList("apple", "banana", "apple", "orange", "banana", "apple"); Map<String, Long> map = list.stream() .collect(Collectors.groupingBy(e -> e, Collectors.counting())); System.out.println(map); } }
出力結果:
{orange=1, banana=2, apple=3}
上記の方法では、リスト内の各要素がキーとなり、その要素の出現回数が値としてマップに格納されます。必要に応じて、出力されたマップを別の形式に変換したり、他の操作を行ったりすることもできます。