Map中查询对象

我在map中key存放对象的主键值,value存放对象(不知道对象有几个属性)。我要可以实现任意一个属性或属性的任意组合在map中查询对象。可以写多个方法。

假如要足够动态的话 用反射实现
你的value不是存入的对象吗,那么在传入属性名和值之后,根绝对象的getFields()得出所有属性来匹配,匹配出来的属性(一个或者多个)动态调用get方法,然后和你传入的值来做比较,假如符合,则是此主键索引的对象。这里要注意的就是,你传入的值有可能是 = > <甚至是like。所以你最好抽离一个规则来定义匹配方法。其实你的想法就和内存数据库差不多 假如要具体代码可以站内给我留言。

这种查询不建议使用map

这个功能可以实现,无非就是循环一次,通过属性过滤一下

除了遍历,别无他法