Предполагая, что массив определен, как показано ниже, вместе с HashMap
:
int arr[] = { 1, 3, 4 };
HashMap<Integer, String> hmap = new HashMap<>();
// data in the map
hmap.put(1, "A"); hmap.put(2, "B"); hmap.put(3, "C"); hmap.put(4, "D"); hmap.put(5, "E");
Вместо того, чтобы перебирать всю карту, вы можете перебирать массив
String[] array = Arrays.stream(arr).mapToObj(i -> hmap.get(i))
.filter(Objects::nonNull)
.toArray(String[]::new);
Этодает вывод:
ACD
Согласно вашему комментарию, чтобы присоединиться к нему как одна строка, вы можете использовать:
String str = Arrays.stream(arr).mapToObj(i -> hmap.get(i))
.filter(Objects::nonNull)
.collect(Collectors.joining("/"));