У меня есть конкретная проблема, и мне было интересно, сможет ли ее решить API Java 8 Streams.Я знаю, что это можно сделать вне использования Streams API, но я не хочу добавлять весь шаблонный код, связанный с попытками добиться этого, если это можно сделать с помощью Streams.У меня есть карта
Map<String, String> greetings = new HashMap<>();
greetings.put("abc", "Hello");
greetings.put("def", "Goodbye");
greetings.put("ghi", "Ciao");
greetings.put("xyz", "Bonsoir");
и список ключей:
List<String> keys = Arrays.asList("def", "zxy");
, и, используя вышеуказанное с Streams API, можно отфильтровать это до:
Map<String, String> filteredGreetings = new HashMap<>();
filteredGreetings.put("def", "Goodbye");
filteredGreetings.put("xyz", "Bonsoir");
Надеюсь, в этом есть смысл того, чего я пытаюсь достичь.
До сих пор это работало только при указании точного ключа, по которому нужно отфильтровать набор ключей карты, но тогда он будет возвращать только один набор записей.Меня интересует полностью отфильтрованная карта, и я изо всех сил пытаюсь достичь этого.