黑马程序员技术交流社区

标题: Map中键的唯一性,代码体现 [打印本页]

作者: LARK    时间: 2016-10-12 19:04
标题: Map中键的唯一性,代码体现
1.以逗号切隔字符串s,得到一个String类型的数组String[]arr,数组中的每一个元素类似于"1.2","3.4"这样的字符,arr.lehgth=6.
2.把数组中的每一个元素以"."作为分隔符,把"."左边的元素作为key,右边的元素作为value,封装到Map中,
以下代码中5.6这一组数据存入Map,会被5.56这一组数据覆盖,因为键5只能有一个,值会被后面的值覆盖.所以Map.size()=5.        
                String s = "1.2,3.4,5.6,7.8,5.56,44.55";
                String[] arr = s.split(",");
                Map<Object, Object> map = new HashMap<Object, Object>();
                for (int i = 0; i < arr.length; i++) {
                        String[] arr2 = arr[i].split("\\.");
                        map.put(arr2[0], arr2[1]);
                }
作者: LARK    时间: 2016-10-12 19:06
自己学习中遇到的问题总结,有收获哦
作者: 赵晗    时间: 2016-10-12 19:09
感谢楼主分享
作者: LARK    时间: 2016-10-12 19:22
赵晗 发表于 2016-10-12 19:09
感谢楼主分享

不客气,共同学习进步

作者: kaka3208c    时间: 2016-10-13 12:57
请问下如果5这组不覆盖呢?》?
作者: LARK    时间: 2016-10-14 00:37
kaka3208c 发表于 2016-10-13 12:57
请问下如果5这组不覆盖呢?》?

用TreeMap吧,传入比较器修改





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2