我有这样一个代码:
class MyObject{
String division;
String subDivision;
Integer size;
public MyObject(String division, String subDivision, Integer size) {
this.division = division;
this.subDivision = subDivision;
this.size = size;
}
List<MyObject> list = Arrays.asList(new MyObject("A", "AA", 4),
new MyObject("A", "AB", 2),
new MyObject("A", "AC", 3),
new MyObject("B", "BA", 11),
new MyObject("B", "BB", 7),
new MyObject("C", "CA", 8));
Map<String, Map<String,Integer>> map
= list.stream().collect(Collectors.toMap(MyObject::getDivision), ...);
你能帮我完成代码库吗?
您可以使用groupingby
,它接受分类器和下游收集器。分类器用于基于division
创建外部映射,然后使用下游收集器(tomap
)生成内部映射:
list.stream()
.collect(Collectors.groupingBy(MyObject::getDivision,
Collectors.toMap(MyObject::getSubDivision, MyObject::getSize)));
问题内容: 最近我谈话有什么将要转换的最佳方式是同事,以在Java中,如果有这样做的任何特殊利益。 我想知道最佳转换方法,如果有人可以指导我,我将不胜感激。 这是个好方法吗? 问题答案: 当然,假设每个Item都有一个返回正确类型的键的方法。
我知道我应该使用函数,但我不知道如何使用,也没有看到它的任何示例。
我正在努力使用Vavr将的减少为一个 有人能提供如何使用/的示例吗?
我正在尝试编写代码来掩盖嵌套的json字段。 从...调用此方法。 我在尝试迭代嵌套的json对象时出错... 无法转换scala类型的值。有些要键入scala.collection.mutable.Map 如何以这种方式递归复杂的嵌套json对象?
假设我有一个多映射,如下所示: 第一个步骤是将字符串拆分为一个数组,因为最初它是一个逗号分隔的字符串。然后,我找到任何值中的最大元素数,循环该次数的条目中的所有值,并用结果为每个值创建一个映射。坦率地说,我上周五写了这段代码,但我已经不能正确地阅读它... 所以,一开始这是一件简单的事情,但我最终陷入了混乱,有没有更好的方法来做这件事? 提前谢了。
我在我的颤振应用程序中使用包dio。从我的api问题中获取响应<代码>响应。数据获取类型