【发布时间】:2020-11-07 17:10:57
【问题描述】:
我正在尝试使用 HashMap、ArrayList、List 创建一个看起来像这样的结构:
[
{
firstname=Firstname 1,
lastname=Lastname 1,
detail=[
{facturaId=1, date=2020/01/01},
{facturaId=2, date=2020/01/02},
{facturaId=3, date=2020/01/03}
]
},
{
firstname=Firstname 2,
lastname=Lastname 2,
detail=[
{facturaId=4, date=2020/01/01},
{facturaId=5, date=2020/01/02},
{facturaId=6, date=2020/01/03}
]
}
]
我的数据结构是这样的:
| factureid | date | firstname | lastname |
+-----------+----------+-----------+----------+
|1 |2020/01/01|Firstname 1|Lastname 1|
|2 |2020/01/02|Firstname 1|Lastname 1|
|3 |2020/01/03|Firstname 1|Lastname 1|
|4 |2020/01/01|Firstname 2|Lastname 2|
|5 |2020/01/02|Firstname 2|Lastname 2|
|6 |2020/01/03|Firstname 2|Lastname 2|
我对HashMap不是很熟悉,这是我的尝试:
List<Object[]> results = Info.find();
List<Map<String, String>> detail = new ArrayList<>();
results.stream().forEach((result) -> {
Map<String, String> detailMap = new HashMap<>();
detailMap.put("facturaId", result[0].toString());
detailMap.put("date", result[1].toString());
detail.add(detailMap);
});
System.out.println(detail);
打印:
[
{facturaId=1, date=2020/01/01},
{facturaId=2, date=2020/01/02},
{facturaId=3, date=2020/01/03},
{facturaId=4, date=2020/01/01},
{facturaId=5, date=2020/01/02},
{facturaId=6, date=2020/01/03}
]
不是我预期的结果。
【问题讨论】:
-
你的问题是什么?
-
为什么它不是
List<Person>而Person有属性firstname、lastname、detail?
标签: java arrays list arraylist hashmap