Вы можете создать метод следующим образом:
int[] getValuesByKey(Map<Pair<String,Integer>, Integer> map, String key) {
return map.entrySet()
.stream()
.filter(e -> e.getKey().getKey().equals(key))
.mapToInt(Map.Entry::getValue)
.toArray();
}
, который дал карту и ключ, даст все значения, где ключ ввода равен предоставленному ключу.
или если вам нужен массив Integer
, вы можете сделать:
Integer[] getValuesByKey(Map<Pair<String,Integer>, Integer> map, String key) {
return map.entrySet()
.stream()
.filter(e -> e.getKey().getKey().equals(key))
.map(Map.Entry::getValue)
.toArray(Integer[]::new);
}
или если вы хотите получить список.
List<Integer> getValuesByKey(Map<Pair<String,Integer>, Integer> map, String key) {
return map.entrySet()
.stream()
.filter(e -> e.getKey().getKey().equals(key))
.map(Map.Entry::getValue)
.collect(Collectors.toCollection(ArrayList::new));
}