Java 8 List <V> em Map <K, V> com função

user7294900:

Tentei seguir a lista Java 8 no mapa e tente alterar Definir para mapa em uma lista

Em vez de loop (que funciona)

for (Type t : toSet()) {
    map.put(Pair.of(t, Boolean.TRUE), this::methodAcceptingMap);
}

Tentei com soluções como:

toSet().stream()
       .collect(Collectors.toMap(Pair.of(Function.identity(), Boolean.TRUE), 
                                 this::methodAcceptingMap));

Mas ocorreu um erro ao converter:

Type mismatch: cannot convert from Pair<Function<Object,Object>,Boolean> 
to Function<? super T,? extends K>

Meu mapa

private Map<Pair<Type, Boolean>, BiConsumer<Pair<Type, Boolean>, Parameters>> map =
      new HashMap<>();
ernest_k:

Collectors.toMap tem duas funções, e nenhum de seus argumentos se encaixa.

Você deveria usar:

Map<Pair<Type, Boolean>, BiConsumer<Pair<Type, Boolean>, Parameters>> map =
    set.stream()
       .collect(Collectors.toMap(el -> Pair.of(el, Boolean.TRUE), 
                                 el -> this::methodAcceptingMap));

A expressão Pair.of(t, Boolean.TRUE)simplesmente não é de um Functiontipo. E this::methodAcceptingMappode caber na assinatura de a BiConsumer, mas o método requer uma Função. Portanto, el -> this::methodAcceptingMapdeve ser usado como uma função que recebe um elemento de fluxo e retorna seu BiConsumer.

Observe que o contexto de atribuição ( map =) é importante neste caso. Sem ele, o tipo de destino dessas expressões lambda estará ausente e a compilação falhará.

Este artigo é coletado da Internet.

Se houver alguma infração, entre em [email protected] Delete.

editar em
0

deixe-me dizer algumas palavras

0comentários
loginDepois de participar da revisão

Artigos relacionados

Java 8 Streams: faça Collectors.groupingBy retornar Map <K, List <V>> em vez de Map <K, List <List <V> >>

Java 8 Streams: faça Collectors.groupingBy retornar Map <K, List <V>> em vez de Map <K, List <List <V> >>

Como transformar List <T> em List <Map <K, V >> usando Lambda em JAVA8

Java 8 convertido Map <K, List <V >> para Map <V, List <K >>

Função Java 8 que recebe um List <V> e retorna um HashMap <K, List <V>>

Como converter List <V> para Map <K, List <V >>, com o Java 8 córregos e personalizados Lista e Mapa fornecedores?

Como converter um HashMap em um K / V-String em Java 8 com Streams

How to convert List<Map<K,V>> into Map<K,List<V>> In java

Extraindo Map <K, Multiset <V >> de Stream de fluxos em Java 8

Como definir uma função de extensão que opera no tipo V em Map <K, V []> em Typescript?

Precisamos bloquear o mutex em torno da função std :: map <K, V> :: find?

No Java 8, como faço para transformar um mapa <K, V> em outro mapa <K, V> usando uma lambda?

Remover última vírgula de cadeia que não termina com vírgula em Java 8

Mapa <K, V> Voltar ao mapa <V, Map <K, V >> após valor groupingBy, em vez de Map <Obj, List <Entry <K, V >>>

Como usar vários fluxos e funções .map no java 8 com expressões lambda

Listar <Objeto []> para mapear <K, V> em java 8

Lista Java 8 <V> no Mapa <K, V>

Como lidar com vários botões de opção na função map em reactjs?

Inicialize o mapa com a matriz em Typescript: new Map ([[k1, v1], [k2, v2]])

Fonction Java 8 qui prend un List <V> et renvoie un HashMap <K, List <V>>

Usando map() em uma função com várias entradas para se livrar de loops for

Por que Map <K, V> não estende a Função <K, V>?

Erro de Java - O tipo List <E> não é visível - O tipo Map <K, V> não é visível

Erro de Java - O tipo List <E> não é visível - O tipo Map <K, V> não é visível

Java 8 Streams: mapeie o mesmo objeto várias vezes com base em propriedades diferentes

Verifique se uma string é válida com codificação UTF-8 em Java

Substitua várias strings usando uma única função em java 8

Tipo genérico em java: como definir uma função com vários tipos diferentes retornados

Convert List of List of Elements to Map < K, List<V>>

TOP lista

  1. 1

    R Shiny: use HTML em funções (como textInput, checkboxGroupInput)

  2. 2

    O Chromium e o Firefox exibem as cores de maneira diferente e não sei qual deles está fazendo certo

  3. 3

    Como assinar digitalmente um documento PDF com assinatura e texto visíveis usando Java

  4. 4

    R Folheto. Dados de pontos de grupo em células para resumir muitos pontos de dados

  5. 5

    Gerenciar recurso shake de Windows Aero com barra de título personalizado

  6. 6

    Como obter dados API adequados para o aplicativo angular?

  7. 7

    UITextView não está exibindo texto longo

  8. 8

    Por que meus intervalos de confiança de 95% da minha regressão multivariada estão sendo plotados como uma linha de loess?

  9. 9

    Acessando relatório de campanhas na AdMob usando a API do Adsense

  10. 10

    Usando o plug-in Platform.js do Google

  11. 11

    Como posso modificar esse algoritmo de linha de visada para aceitar raios que passam pelos cantos?

  12. 12

    Dependência circular de diálogo personalizado

  13. 13

    Coloque uma caixa de texto HTML em uma imagem em uma posição fixa para site para desktop e celular

  14. 14

    iOS: como adicionar sombra projetada e sombra de traço no UIView?

  15. 15

    Como usar a caixa de diálogo de seleção de nomes com VBA para enviar e-mail para mais de um destinatário?

  16. 16

    Tabela CSS: barra de rolagem para a primeira coluna e largura automática para a coluna restante

  17. 17

    How to create dynamic navigation menu select from database using Codeigniter?

  18. 18

    Converter valores de linha SQL em colunas

  19. 19

    ChartJS, várias linhas no rótulo do gráfico de barras

  20. 20

    用@StyleableRes注释的getStyledAttributes。禁止警告

  21. 21

    não é possível adicionar dependência para com.google.android.gms.tasks.OnSuccessListener

quentelabel

Arquivo