import java.util.HashMap;
import java.util.IdentityHashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
import java.util.TreeMap;
public class MapTest {
	public static void main(String[] args) {
		Map<Object, TreeMap<String, Object>> tree = new IdentityHashMap<>();
		TreeMap<String, Object> test0 = new TreeMap<>();
		test0.put("11:01", 111);
		test0.put("11:02", 222);		TreeMap<String, Object> test1 = new TreeMap<>();
		test1.put("11:03", 333);
		test1.put("11;04", 444);		String str1 = new String("1");
		String str2 = new String("1");		String str3 = new String("2");
		String str4 = new String("2");		tree.put(str1, test0);
		tree.put(str2, test1);		tree.put(str3, test0);
		tree.put(str4, test1);		System.out.println(tree);
		Map<Object, TreeMap<String, Object>> map000 = mapK(tree);
		System.out.println(map000);
	}
	@SuppressWarnings("rawtypes")
	public static Map<Object, TreeMap<String, Object>> mapK(Map<Object, TreeMap<String, Object>> map) {		Map<Object, TreeMap<String, Object>> tree = new HashMap<>();
		for (Entry<Object, TreeMap<String, Object>> vo : map.entrySet()) {
			Object key1 = vo.getKey();
			if (!tree.containsKey(key1)) {
				tree.put(key1, vo.getValue());
			} else {
				TreeMap<String, Object> map1 = vo.getValue();
				Iterator<?> iter = map1.entrySet().iterator();
				while (iter.hasNext()) {
					Map.Entry entry = (Map.Entry) iter.next();
					String key = (String) entry.getKey();
					Object integ = (Integer) entry.getValue();
					tree.get(key1).put(key, integ);
				}
			}
		}
		return tree;
	}1. }