A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© LARK 中级黑马   /  2016-10-12 19:04  /  827 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

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]);
                }

5 个回复

倒序浏览
自己学习中遇到的问题总结,有收获哦
回复 使用道具 举报
感谢楼主分享
回复 使用道具 举报
赵晗 发表于 2016-10-12 19:09
感谢楼主分享

不客气,共同学习进步
来自宇宙超级黑马专属苹果客户端来自宇宙超级黑马专属苹果客户端
回复 使用道具 举报
请问下如果5这组不覆盖呢?》?
回复 使用道具 举报
kaka3208c 发表于 2016-10-13 12:57
请问下如果5这组不覆盖呢?》?

用TreeMap吧,传入比较器修改
来自宇宙超级黑马专属苹果客户端来自宇宙超级黑马专属苹果客户端
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马