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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

yueyazhishang 发表于 2014-12-8 20:03
27期没看懂题目描述,28期我来了。
  1. for(int i=1;i<=map.size();i++){
  2.                 int value=Integer.parseInt(map.get(i));//获取键为i对应的值并转化为Integer
  3.                 map.remove(i);//将当前的键值删除
  4.                 map.put(i+value, value+"");//将更新的键值添加到map中
  5.         }
复制代码

答案是没问题,就是不建议在for循环中对集合进行删除和添加操作,放在Iterator里比较好。
回复 使用道具 举报
例行提交

Desktop.rar

3.17 KB, 阅读权限: 200, 下载次数: 2

代码和截图

评分

参与人数 1技术分 +2 收起 理由
王震阳老师 + 2 赞一个!

查看全部评分

回复 使用道具 举报
Rdw 初级黑马 2014-12-8 22:21:31
123#

回帖奖励 +1

领题了来,
回复 使用道具 举报
就业指导-王震阳老师 发表于 2014-12-8 21:43
答案是没问题,就是不建议在for循环中对集合进行删除和添加操作,放在Iterator里比较好。 ...

阳哥果然细心,我这样写是考虑看起来比较美观,吸取阳哥的指点。
回复 使用道具 举报
arui12580 来自手机 中级黑马 2014-12-8 23:38:25
125#

回帖奖励 +1

哎。好东西啊。
回复 使用道具 举报

回帖奖励 +1

呵呵,定个
回复 使用道具 举报

回帖奖励 +1

居然不在新开的区
回复 使用道具 举报
Test40.zip (910 Bytes, 下载次数: 1)
睡前一题,练练手了

27.png (14.64 KB, 下载次数: 10)

27.png

评分

参与人数 1技术分 +1 收起 理由
王震阳老师 + 1 赞一个!

查看全部评分

回复 使用道具 举报

回帖奖励 +1

领题来了,冲刺技术分。
回复 使用道具 举报
yueyazhishang 发表于 2014-12-8 22:38
阳哥果然细心,我这样写是考虑看起来比较美观,吸取阳哥的指点。

这样我就放心啦:)
回复 使用道具 举报
逍遥小seng 发表于 2014-12-9 00:48
睡前一题,练练手了
  1. package schooltest;
  2. import java.util.*;
  3. /*
  4. * 求:
  5.         ①将map集合的key值转变为key+(int)value,并输出转变后的map
  6.         ②在第①步的基础上(map已经是新map了),删除map中50<key+(int)value<150的元素,并输出删除数据后的map

  7. */
  8. public class Test40 {

  9.         public static void main(String[] args) {
  10.                 // TODO Auto-generated method stub
  11.                 Map<Integer,String> m = answer1();
  12.                 System.out.println(m);
  13.                 Map<Integer,String> m2 =answer2(m);
  14.                 System.out.println(m2);
  15.                
  16.         }
  17.         public static Map<Integer,String> answer1()
  18.         {
  19.                 Map<Integer,String> hm = new HashMap<Integer,String>();
  20.                 Map<Integer,String> hm2 = new HashMap<Integer,String>();//不能同时操作hm(既增加 有删除),所以笨办法,又定义了一个
  21.                
  22.                 hm.put(1, "90");
  23.                 hm.put(2, "80");
  24.                 hm.put(3, "70");
  25.                 hm.put(4, "60");
  26.                 hm.put(5, "50");
  27.                 hm.put(6, "40");
  28.                 hm.put(7, "30");
  29.                 hm.put(8, "20");
  30.                 hm.put(9, "10");
  31.                 Set<Integer> keySet = hm.keySet();
  32.                 for(Integer key:keySet)
  33.                 {
  34.                         String value= hm.get(key);
  35.                         Integer key2 = key+Integer.parseInt(value);
  36.                         hm2.put(key2, value);
  37.                 }
  38.                 //System.out.println(hm2);
  39.                 hm.clear();
  40.                 //System.out.println(hm);
  41.                 Set<Integer> keySet2 = hm2.keySet();
  42.                 for(Integer key2:keySet2)
  43.                 {
  44.                         String value2= hm2.get(key2);
  45.                         hm.put(key2, value2);
  46.                 }
  47.                 return hm;
  48.         }
  49.         public static Map<Integer,String> answer2(Map<Integer,String> m)
  50.         {
  51.                 Set<Map.Entry<Integer, String>> entrySet = m.entrySet();
  52.                 Iterator<Map.Entry<Integer, String>> it = entrySet.iterator();
  53.                 while(it.hasNext())
  54.                 {
  55.                         Map.Entry<Integer, String> me =it.next();
  56.                         Integer key =me.getKey();
  57.                         if(key>50&&key<150)
  58.                                 it.remove();
  59.                 }
  60.                 return m;
  61.         }

  62. }
复制代码

写的有些复杂,在iterator中对集合进行删除、添加操作会是代码更加简洁、健全。同时第二问也把题意理解错了,第二题不是50<key<150,而是新map的50<key+value<150.
继续努力,加油。
回复 使用道具 举报

回帖奖励 +1

赞,这个模块真棒!
回复 使用道具 举报

Desktop.zip

46.47 KB, 阅读权限: 200, 下载次数: 1

28期

评分

参与人数 1技术分 +2 收起 理由
王震阳老师 + 2 赞一个!

查看全部评分

回复 使用道具 举报
交题了。。  阳哥多指点。。。

2.gif (12.84 KB, 下载次数: 1)

2.gif

Demo28.rar

786 Bytes, 阅读权限: 200, 下载次数: 1

评分

参与人数 1技术分 +2 收起 理由
王震阳老师 + 2 赞一个!

查看全部评分

回复 使用道具 举报

HeimaMapDemo.rar

585 Bytes, 阅读权限: 100, 下载次数: 1

评分

参与人数 1技术分 +2 收起 理由
王震阳老师 + 2 很给力!

查看全部评分

回复 使用道具 举报

回帖奖励 +1

前来领取题目~
回复 使用道具 举报
     来要技术分了,    2分到碗里来,谢谢啊。

结果.PNG (3.86 KB, 下载次数: 1)

结果.PNG

MapTest.zip

609 Bytes, 阅读权限: 200, 下载次数: 1

源代码

评分

参与人数 1技术分 +1 收起 理由
王震阳老师 + 1 赞一个!

查看全部评分

回复 使用道具 举报
提交答案~~  谢谢~~

123.jpg (79.07 KB, 下载次数: 0)

运行结果

运行结果

Maptest.rar

673 Bytes, 阅读权限: 200, 下载次数: 1

评分

参与人数 1技术分 +1 收起 理由
王震阳老师 + 1 赞一个!

查看全部评分

回复 使用道具 举报

回帖奖励 +1

看看会不会
回复 使用道具 举报

DemoTest28-28期.zip (778 Bytes, 下载次数: 30)

问下阳哥有没有可以不新建map的方法,感觉这样麻烦啊

评分

参与人数 1技术分 +1 收起 理由
王震阳老师 + 1 赞一个!

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马