【发布时间】:2020-09-14 06:12:12
【问题描述】:
每个参与者都在给彼此投票一些数值,我想用代理人的名字写这个信息。
通过以下代码,
cj.makingDefault().stream()
.forEach(a->out.print(a.entrySet()));
我得到一个打印的地图列表,
[ari=[0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03],
hyo=[0.31, 0.31, 0.317, 0.31..., ji=[...], yoo=[...], mi=[...]..]
我怎样才能只打印出代理的数字值,用换行符分隔?
想要的结果是这样的
0.3, 0.3, 0.3, ...0.3
0.31, 0.31, 0.31, ...0.31,
...
如果有 7 个参与者,则为 7 x 7 矩阵。
提前感谢您的帮助~
编辑)
作为临时解决方案,我修改了“cj.makingDefault()”函数以仅返回 Map
cj.makingDefault().entrySet()
.stream().forEach(a->out.print(a.getValue()+"\n"));
我得到了
[0.0056009042654552865, 0.0056009042654552865, 0.0056009042654552865, 0.0056009042654552865, 0.0056009042654552865, 0.0056009042654552865, 0.0056009042654552865]
[0.31583809304895144, 0.31583809304895144, 0.31583809304895144, 0.31583809304895144, 0.31583809304895144, 0.31583809304895144, 0.31583809304895144]
[0.9924090841607273, 0.9924090841607273, 0.9924090841607273, 0.9924090841607273, 0.9924090841607273, 0.9924090841607273, 0.9924090841607273]
[0.8093898651356558, 0.8093898651356558, 0.8093898651356558, 0.8093898651356558, 0.8093898651356558, 0.8093898651356558, 0.8093898651356558]
[0.015200181208559038, 0.015200181208559038, 0.015200181208559038, 0.015200181208559038, 0.015200181208559038, 0.015200181208559038, 0.015200181208559038]
[0.03947825506938696, 0.03947825506938696, 0.03947825506938696, 0.03947825506938696, 0.03947825506938696, 0.03947825506938696, 0.03947825506938696]
[0.39173806385104337, 0.39173806385104337, 0.39173806385104337, 0.39173806385104337, 0.39173806385104337, 0.39173806385104337, 0.39173806385104337]
那我怎样才能消除这个..的 suqare braket 呢?这将是完美的..
【问题讨论】:
-
请问
cj.makingDefault()的类型是什么? -
它返回 List
-
试试
a.values()。它返回一个您可以根据需要打印的集合 -
@user7,我使用 getValue 仅提取数字..但仍然存在问题..
-
你能分享更多的输入和输出作为例子吗?例如,查看 ji、yoo、mi 的值将去哪里。每个地图确实只有一个条目?
标签: java loops dictionary set