java - 我需要使用第一个数组值来计算第二个数组中的大小,如果数据中出现重复值,我想要大小值的总和?
问题描述
我有两个数组一个是,
data[10] = {10,10,30,30,90,60,71,91,90,91};
另一个是
size[10] = {1000,20000,30000,40000,50000,60000,7100,8000,9000,9100};
我想要做的是能够通过上面的数据数组进行索引,并从大小数组中挑选出大小。但是对于数据数组中的重复值,我希望聚合大小,例如,值 10 的大小应该是 21000。我尝试使用 aboolean duplicates;
和各种不同的循环来找出我的问题,但到目前为止我收效甚微。
解决方案
您可以简单地使用 a并用数组中的键和数组中的值Map
填充它。像这样的东西:data
size
int[] data = { 10, 10, 30, 30, 90, 60, 71, 91, 90, 91 };
int[] size = { 1000, 20000, 30000, 40000, 50000, 60000, 7100, 8000, 9000, 9100 };
Map<Integer, Integer> map = new HashMap<>();
for (int i = 0; i < data.length; ++i)
{
map.put(data[i], map.getOrDefault(data[i], 0) + size[i]);
}
System.out.println(map);
这打印
{71=7100, 10=21000, 90=59000, 91=17100, 60=60000, 30=70000}
推荐阅读
- c++ - TCP 服务器挂起,不响应 SYN
- image - 检查图像时,开发工具中的内在价值代表什么?
- reactjs - 使用 react-hook-form 的 setValue 时,Material-UI TextField 不更新值
- html - 如何将一长段 css 应用于整个 div 部分(登录表单)
- c# - 生成在 [0.0d - 1.0d] 范围内定义的安全双精度(包括两者)
- c# - C# 将组合框的 SelectedIndex 设置为 -1 有什么作用?
- python - 没有为自定义损失函数的任何变量提供梯度
- python - 蛙跳记忆(Python)
- angular - JAW 屏幕阅读器通过更改 Angular 字符串插值读取旧版本的按钮文本
- kotlin - 如何将 Cursor 实例从一个片段发送到包含在 kotlin 中具有相同活动的 recyclerview 的片段