java - TreeMap doesn't sort properly in this case -
sequence of statements copy hashmap treemap
private map<string,bitmap> imagefilexx= new hashmap<string,bitmap>(); //assuming map has values printmap(imagefilexx); treemap<string,bitmap> imagefilexxs; imagefilexxs= new treemap<string,bitmap>(imagefilexx); printmap(imagefilexxs); function display above map:
public static void printmap(map<string, bitmap> map) { (map.entry entry : map.entryset()) { system.out.println("key : " + entry.getkey()); } } input:
key : http://myserver.com/myfolder/imagedesc/imagedesc%20p7.png key : http://myserver.com/myfolder/imagedesc/imagedesc%20p1.png key : http://myserver.com/myfolder/imagedesc/imagedesc%20p5.png key : http://myserver.com/myfolder/imagedesc/imagedesc%20p3.png key : http://myserver.com/myfolder/imagedesc/imagedesc%20p11.png key : http://myserver.com/myfolder/imagedesc/imagedesc%20p9.png current o/p:
key : http://myserver.com/myfolder/imagedesc/imagedesc%20p1.png key : http://myserver.com/myfolder/imagedesc/imagedesc%20p11.png //11 should displayed in last key : http://myserver.com/myfolder/imagedesc/imagedesc%20p3.png key : http://myserver.com/myfolder/imagedesc/imagedesc%20p5.png key : http://myserver.com/myfolder/imagedesc/imagedesc%20p7.png key : http://myserver.com/myfolder/imagedesc/imagedesc%20p9.png expected o/p:
key : http://myserver.com/myfolder/imagedesc/imagedesc%20p1.png key : http://myserver.com/myfolder/imagedesc/imagedesc%20p3.png key : http://myserver.com/myfolder/imagedesc/imagedesc%20p5.png key : http://myserver.com/myfolder/imagedesc/imagedesc%20p7.png key : http://myserver.com/myfolder/imagedesc/imagedesc%20p9.png key : http://myserver.com/myfolder/imagedesc/imagedesc%20p11.png
it sorting lexicographically (the default sort method).
you'll have define own implementation of natural sort order. constructor of treemap allows pass in custom comparator.
Comments
Post a Comment