现在的位置: 首页 > 综合 > 正文

关于List用法误区纠正

2018年05月14日 ⁄ 综合 ⁄ 共 1354字 ⁄ 字号 评论关闭

Map<String, List<String[]>> map = new HashMap<String, List<String[]>>();

List<String[]> list = new ArrayList<String[]>();
  String[] a1 = { "网站", "标题", "媒体类型", "属性", "时间" };
  String[] a2 = { "慧聪安防网", "国内首个云计算平台实乃噱头涉嫌传销", "新闻", "中立", "2011-09-05 09:33:00" };;
  String[] a3 = { "行业中国", "第三方支付进入新学年 近场支付成为竞争新热点", "新闻", "中立","2011-09-05" };
  String[] a4 = { "行业中国", "2011年中国电子商务创业及投资环境(天津)研讨会", "新闻", "中立","2011-09-06" };
  list.add(a1);
  list.add(a2);
  list.add(a3);
  list.add(a4);
  map.put("info0", list);
  list = new ArrayList<String[]>();
//list.clear();

  String[] b2 = { "视觉辨认系统", "百度收购方正旗下番薯网40%股份", "新闻", "中立", "2011-09-05" }; ;
  String[] b3 = { "行业中国", "米克:未来整个电子商务趋势应该是平台式", "电商社区", "中立", "2011-09-09" };
  list.add(a1);
  list.add(b2);
  list.add(b3);
  map.put("info1", list);
  list = new ArrayList<String[]>();//list.clear();
  String[] c3 = { "视觉辨认系统", "百度收购方正旗下番薯网40%股份", "新闻", "中立", "2011-09-05" };
  list.add(a1);
  list.add(c3);
  map.put("info2", list);

  list = new ArrayList<String[]>();//list.clear();
  String[] d4 = { "视觉辨认系统", "百度收购方正旗下番薯网40%股份", "新闻", "中立", "2011-09-05" };
  list.add(a1);
  list.add(d4);
  map.put("info3", list);

  list = new ArrayList<String[]>();//list.clear();
  String[] e5 = { "视觉辨认系统", "百度收购方正旗下番薯网40%股份", "新闻", "中立", "2011-09-05" };
  list.add(a1);
  list.add(e5);
  map.put("info4",
list
);

  writer.insertContentTable(listname, map);

 

把上面绿色内容替换成红色内容会出现肉眼看不出来的错误

程序到最后存在map几个key下的值都跟最后一个红色list所装内容一样,也就是前面几个都被覆盖了,

所以List用一次就要实例化一次(非官方语言)。

抱歉!评论已关闭.