收集要Map集的流

8ehkhllq  于 2021-06-30  发布在  Java
关注(0)|答案(0)|浏览(180)

我有以下方法,负责使用Java8流将字符串放入列表中

List<String> methodNames = new ArrayList<>();
typesMapperGenerationInput.getFieldsMappersMetadata().stream()
    .map(mapMethodNameConvention)
    .collect(Collectors.toCollection(() -> methodNames));

typesMapperGenerationInput.getFieldsValueProducersMetadata().stream()
    .map(produceMethodNameConvention)
    .collect(Collectors.toCollection(() -> methodNames));

typesMapperGenerationInput.getConstantMappingsMetadata().stream()
    .map(setConstantValueMethodNameConvention)
    .collect(Collectors.toCollection(() -> methodNames));

我现在要做的是把它放在Map上,而不是一个列表,我试着这样做:

List<String> methodNames = new ArrayList<>();
typesMapperGenerationInput.getFieldsMappersMetadata().stream()
    .map(mapMethodNameConvention)
    .collect(Collectors.toMap(name -> mapMethodNameConvention, number -> 2));

typesMapperGenerationInput.getFieldsValueProducersMetadata().stream()
    .map(produceMethodNameConvention)
    .collect(Collectors.toMap(name -> produceMethodNameConvention, number -> 1));

typesMapperGenerationInput.getConstantMappingsMetadata().stream()
    .map(setConstantValueMethodNameConvention)
    .collect(Collectors.toMap(name -> setConstantValueMethodNameConvention, number -> 1));

但这并不能完成我所能得到的
我想做的是有一个<string,integer>的Map,并像在第一个代码示例中那样不断地获取字符串部分,如果我从 getFieldsMappersMetadata Map的值部分将是2,否则将是1
任何帮助都将不胜感激

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题