好的,这可以使用 Java 中的 Stream API 来实现。
首先,我们需要从数据库中读取数据,并将其存储在一个列表中。假设我们已经有了一个 List<String> rows
,其中包含了数据库中的行。然后,我们可以使用下面的代码将行转换为列:
Map<String, List<String>>columns = rows.stream()
.map(row -> row.split(","))
.collect(Collectors.groupingBy(row -> row[0], Collectors.mapping(row -> row[1], Collectors.toList())));
这段代码使用了 Stream API 的 map
操作来将每一行拆分为两个部分,然后使用 collect
操作将这些部分收集到一个 Map
中。在这个 Map
中,键是每一行的第一个部分,值是一个包含了第二个部分的列表。
例如,如果我们有如下的行:
A,1
A,2
A,3
B,4
B,5
C,6
那么最终的 Map
将是这样的:
{"A" -> ["1", "2", "3"],
"B" -> ["4", "5"],
"C" -> ["6"]
}
你可以使用这个 Map
中的键来访问每一列,例如 columns.get("A")
将返回一个包含 "1"、"2" 和 "3" 的列表。
希望这个回答能够帮助你!