Я хочу проверить, содержится ли какой-либо ключ карты в каком-то другом наборе, и вернуть true, как только будет найдено одно совпадение. Общий способ сделать это будет выглядеть так:
Код: Выделить всё
for each element in the set:
for each key of the map:
if current element of set == current key of map
return true
Я хочу сделать это, используя потоки в Java. Поэтому я считаю, что способ преобразования ключей карты в поток может быть
Код: Выделить всё
myMap.entries().stream().map(Map.Entry::getKey)
но затем запустить цикл for для каждого из них — это то, что я ищу.
Я подумал, что другой способ — это сделать что-то, как показано ниже
р>
Код: Выделить всё
myMap.keySet().forEach((k) -> set.contains(k));
но я хочу, чтобы внешний цикл принадлежал набору, поскольку в наборе очень меньше элементов, чем в карте.
Подробнее здесь:
https://stackoverflow.com/questions/664 ... ng-streams