Java 8 个哈希图 |龙目岛@Data | Collectors.groupingBy 中的方法不可读 |组合键
Java 8 Hashmap | Lombok @Data | Method not readable in Collectors.groupingBy | Composite Key
以下是使用中的具有 lombok @Data
注释的 bean:
@Data
public class XxedgeCrtV implements Serializable {
private static final long serialVersionUID = 1L;
private String registryId;
private String personPartyId;
private String source;
private String compositeKey() {
return registryId + personPartyId + source;
}
}
当我尝试在复合键上使用 create hashmap using Java 8 时,它没有读取方法:
Set<String> duplicates = xxedgeCrtVList.stream()
.collect(Collectors.groupingBy(XxedgeCrtV::compositeKey, Collectors.counting()))
.entrySet().stream()
.filter(e -> e.getValue() > 1L)
.map(e -> e.getKey())
.collect(Collectors.toSet());
谁能建议如何让代码读取这个方法?
我正在制作复合键的键,因为我必须在列表中搜索重复项。
方法引用和Lombok插件都没有错误。 return 类型的分组是 Map
:
Map<String, Long> duplicates = xxedgeCrtVList.stream()
.collect(Collectors.groupingBy(XxedgeCrtV::compositeKey, Collectors.counting()));
使用这段代码,我没有编译错误。
我打赌这是应该抱怨 return 类型而不是方法引用的 IDE 问题。如果是这样,可能还有不同的问题:
- class
XxedgeCrtV
if inner 应该是 static
.
- 如果
XxedgeCrtV
在不同的文件中,compositeKey
的可见性不应是 private
。
以下是使用中的具有 lombok @Data
注释的 bean:
@Data
public class XxedgeCrtV implements Serializable {
private static final long serialVersionUID = 1L;
private String registryId;
private String personPartyId;
private String source;
private String compositeKey() {
return registryId + personPartyId + source;
}
}
当我尝试在复合键上使用 create hashmap using Java 8 时,它没有读取方法:
Set<String> duplicates = xxedgeCrtVList.stream()
.collect(Collectors.groupingBy(XxedgeCrtV::compositeKey, Collectors.counting()))
.entrySet().stream()
.filter(e -> e.getValue() > 1L)
.map(e -> e.getKey())
.collect(Collectors.toSet());
谁能建议如何让代码读取这个方法?
我正在制作复合键的键,因为我必须在列表中搜索重复项。
方法引用和Lombok插件都没有错误。 return 类型的分组是 Map
:
Map<String, Long> duplicates = xxedgeCrtVList.stream()
.collect(Collectors.groupingBy(XxedgeCrtV::compositeKey, Collectors.counting()));
使用这段代码,我没有编译错误。
我打赌这是应该抱怨 return 类型而不是方法引用的 IDE 问题。如果是这样,可能还有不同的问题:
- class
XxedgeCrtV
if inner 应该是static
. - 如果
XxedgeCrtV
在不同的文件中,compositeKey
的可见性不应是private
。