鉴于对的集合{Price, Quantity},我需要以相同的价格汇总所有数量.实现它的最简单方法是什么?
一个肮脏的,将使用Hashmap密钥实现解决方案,价格和价值是聚合数量.但是,据我所知,Float这不是一个安全的关键Hashmap.所以这个解决方案很容易出错.
什么是解决这个问题的推荐替代方案?
您可以使用BigDecimal作为键.它将是哈希码安全的.
您必须初始化值,以便它们具有相同的比例,例如:
BigDecimal key = new BigDecimal(Double.toString(price)).setScale(2);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
490 次 |
| 最近记录: |