java中 util.map中 是不允许直接插入 重复键值对的,值可以重复,但是键一旦重复就会发生覆盖的现象,这里提供集中解决的办法
情景如下:现在在后台存在几百网站会员,现在需要把今天发生的重大经济事件绑定到不同的用户,需要的数据结构为 Map<Event,User_id> 或者 Map<User_id,Event> 很明显User_id 是int类型 很容易出现重复,这时候只需要避开jdk默认的equals hashcode的比较方式就可以了 ,简单的实现是 利用spring对象拷贝的方式
情景如下:现在在后台存在几百网站会员,现在需要把今天发生的重大经济事件绑定到不同的用户,需要的数据结构为 Map<Event,User_id> 或者 Map<User_id,Event> 很明显User_id 是int类型 很容易出现重复,这时候只需要避开jdk默认的equals hashcode的比较方式就可以了 ,简单的实现是 利用spring对象拷贝的方式
BeetleEvent bt = new BeetleEvent();
BeanUtils.copyProperties(bt, b);
memberIdEvent.put(bt,me.getMember_id());
即使是同一个对象 也不会出现覆盖了,其他方法 可以参考 重写equals hashcode 方法 或者 自定义类型