Проблема здесь в том, что вам нужен Set
из ArrayList Set<ArrayList<String>>
, но вместо этого вы используете Set
из Strings Set<String>
.
Учитывая список:
List<List<String>> mappedEntities = Arrays.asList(Arrays.asList("val1", "val2"),
Arrays.asList("val3", "val4"),
Arrays.asList("val1", "val2"),
Arrays.asList("val1", "val5"));
Все, что вам нужно сделать, это просто объявить набор и использовать addAll()
.
Set<List<String>> mySet = new HashSet<>();
mySet.addAll(mappedEntities);
Поскольку набор может содержать только уникальные значения, все дубликаты не будут добавлены в набор ( Нет необходимости явно проверять это ).Теперь вы можете распечатать его:
mySet.forEach(System.out::println);
Или, проще, инициализировать HashSet , используя список mappedEntities
:
Set<List<String>> mySet = new HashSet<>(mappedEntities);