I was wondering if it is possible to split a HashMap into smaller sub-maps.
In my case I have a HashMap of 100 elements and I would like to create 2 (or more) smaller HashMaps from the original one, the first containing the Entries from 0 to 49, the second containing the Entries from 50 to 99.
Map bigMap = new HashMap ();
//should contains entries from 0 to 49 of 'bigMap'
Map smallMap1 = new HashMap ();
//should contains entries from 50 to 99 of 'bigMap'
Map smallMap2 = new HashMap ();
Any suggestions? Many thanks!
解决方案
Do you have to use HashMap?
TreeMap is really good for this kind of things. Here's an example.
TreeMap sorted = new TreeMap(bigMap);
SortedMap zeroToFortyNine = sorted.subMap(0, 50);
SortedMap fiftyToNinetyNine = sorted.subMap(50, 100);