关于Set和Map中的Comparator排序好像有BUG??
未确认
问题大致描述:
一个商品Class(包括barcode,name,price...),通过数据工厂得到一组商品,放入HashSet和HashMap中,
然后放入TreeSet、TreeMap中排序,问题就出来了,如果不按默认的排序,
用Comparator来做,按照商品的price排序,此时得到的TreeSet或者TreeMap就只有一条同价格的商品
例如有3条价格为2.8的商品,但结果只有一条,到现在我也不知道是不是JDK的BUG,解决起来虽然很简单就解决了,但问题是这样不就违背了JDK中Comparator的本意了吗?附上代码,在V0版本中有问题,在V1中没问题,V1中我加了注释,求高手解答下。郁闷,怎么传附件的没找到地方啊晕放到我的资源里面了,高手看下哦
http://dl5.csdn.net/fd.php?i=417814552867656&s=9a4666bac7bd9231a2efd1f88b0c8b33
未确认
问题大致描述:
一个商品Class(包括barcode,name,price...),通过数据工厂得到一组商品,放入HashSet和HashMap中,
然后放入TreeSet、TreeMap中排序,问题就出来了,如果不按默认的排序,
用Comparator来做,按照商品的price排序,此时得到的TreeSet或者TreeMap就只有一条同价格的商品
例如有3条价格为2.8的商品,但结果只有一条,到现在我也不知道是不是JDK的BUG,解决起来虽然很简单就解决了,但问题是这样不就违背了JDK中Comparator的本意了吗?附上代码,在V0版本中有问题,在V1中没问题,V1中我加了注释,求高手解答下。郁闷,怎么传附件的没找到地方啊晕放到我的资源里面了,高手看下哦
http://dl5.csdn.net/fd.php?i=417814552867656&s=9a4666bac7bd9231a2efd1f88b0c8b33
解决方案 »
- KeyStore的load()方法出错
- java中如果解析rquest中json数据
- eclipse的假死问题
- 哪位好心人愿提供一本中文版j2ee API啊
- 各位大哥帮帮忙啊!Struts问题:org.apache.jasper.JasperException: Cannot retrieve mapping for action /sign
- ireport 里的分组怎么用 ?
- Hibernate 如何映射
- java继承映射的问题
- 如果我的APPLET用到了大量的JAR包做为库,该如何写网页文件呢?
- 日期控制问题,高分求解
- tomcat下怎么发布jsp
- 用struts,某一个用户已登录,我要在几个页面上用到该用户的一些信息比如姓名,怎样做呢,是不是要访问数据库
http://solosky.1stfreehosting.com/files/is.colletion.bug.rar
2、你把数据放到HashMap中,HashMap会对put进来的数据按自己的规则排序,如果想按put数据的顺序排序,那就直接用LinkedHashMap吧。
问题是<key,value>,我的key是不重复的,然后将这个HashSet放入TreeSet中,不过这个时候我用Comparator来做排序,并且是根据value中的某个Flied来排的,它是可能重复的,于是得到的TreeMap就少记录了
例如:
key value
001 3.2
002 3.2
003 4.2
004 5.2
这样放进HashSet中4条数据都在,假定为gdsHashSet
接着讲gdsHashSet放入TreeSet中,此时,用Comparator,并且用value来排序
于是就少记录了
key value
001 3.2
003 4.2
004 5.2
这样不就违背了Comparator的本意了吗?