-5
Есть ли способ создать Map<Long, String>
непосредственно из функции groupingBy
в Java 8 вместо создания Map<Long, Set<String>>
?Java 8 Stream groupingby без возврата Список
У меня есть следующий код:
List<Object[]> list = new ArrayList<>();
//row[0] is the primary key and row[1] is the name of the employee
Object[] input1 = { 1l, "employee1", null};
Object[] input2 = { 1l, "employee1", "vorw2"};
Object[] input3 = { 2l, "employee2", "vorw3"};
Object[] input4 = { 3l, "employee3", "vorw1"};
list.add(input1);
list.add(input2);
list.add(input3);
list.add(input4);
//code to replaced
Map<String, Set<String>> byPK= list.stream().collect(Collectors.groupingBy(row -> row[0].longValue(), Collectors.mapping(row -> row[1].toString(),Collectors.toSet())));
мне нужно о/р, как:
List ==> (1l, "employee1"), (2l,"employee2"), (3l, "employee3").
Список имеет один общий тип. Список не существует. Почтовый код, который имеет смысл и компилируется. Также, пожалуйста, соблюдайте основные соглашения об именах Java. Переменные начинаются с строчной буквы. –
Спасибо, что изменили меня, я заменил карту по списку. отредактировал и исправил вопрос. – Mango
По-прежнему не компилируется (add() принимает один аргумент, а не 3) и по-прежнему не соблюдает соглашения об именах. Сделайте шаг назад, откройте свою IDE, напишите код, который компилируется в среде IDE, а затем исправьте свой вопрос. –