用于比较Map值的比较器

时间:2012-08-09 11:10:29

标签: java algorithm compare comparable

我有一个对象,其方法是将自己与另一个方法进行比较。我在这个方法中定义了一个自定义比较器来完成这项工作。

对象有一个属性'output',它是Map<String, Map<String, Object>>,基本上,我需要找到一种方法来比较第二个映射中的值和其他对象的映射值。

问题我正在找到一种方法来根据地图值适当地确定一个对象是否大于,小于或等于另一个对象。我知道可以使用一系列条件,但这不是我想要走的道路。

Map<String, Map<String, Object>>属性值的示例是:

enter image description here

P.S地图的值始终为数字。

编辑:

感谢您的回复。

最后我决定沿着Classes路线走下去。我没有Map<String, Map<String, Object>>属性,而是List<SystemInformation>,其中包含存储键/值对的Map<String, Object>属性。

我分别为内存,进程和文件描述符信息创建了单独的类,并让它们继承SystemInformation类的子类。我在SystemInformation类上实现了Comparable接口,以比较两个SystemInformation对象的属性。

然后,我使用一种非常简单的称重算法,通过使用自定义比较器来确定单独报告的排序顺序。

干杯。

0 个答案:

没有答案