Получить первые k значений из HashMap - PullRequest
0 голосов
/ 23 марта 2019

Я пытаюсь получить первые k значений из хэш-карты.

Я знаю, как получить все значения из хэш-карты, а также как перебирать их все. Есть ли какой-нибудь короткий способ генерировать первые k значений из hashmap

for (Map.Entry<String, Integer> en : hmap.entrySet()) 
{ 
        System.out.println("Key = " + en.getKey() + ", Value = " + en.getValue());
}

1 Ответ

4 голосов
/ 23 марта 2019

Понятие первых элементов не определено для интерфейса Map. Как это было упомянуто в комментариях, вы можете использовать LinkedHashMap или TreeMap, где первый элемент имеет смысл.

Если вы просто хотите получить предельное количество значений карты, вы можете использовать stream api с limit:

hmap.entrySet().stream()
    .limit(2)
    .collect(Collectors.toList());
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...