ArrayList<String> latlonlist =map.get(i);
latlonlist.add("某个String");
map.put(i, latlonlist);由于该语句会多次循环,这么写会新建一个ArrayList,对效率影响很大
所以想写成这样
map.put(i, map.get(i).add("某个String"));
但是由于.add方法返回的是boolean型,导致写法不成立...
请问,有什么解决方法么?

解决方案 »

  1.   


    ArrayList<String> latlonlist =map.get(i);
    latlonlist.add("某个String");
    map.put(i, latlonlist);
    latlonlist  = null;// 让java显示的回收这样就可以每一次循环新建一个list,用完了后就回收。使效率更快一些
      

  2.   

    map.get(i).add("某个String")
      

  3.   

    map.put(i, latlonlist);这句代码多此一举,去掉即可。ArrayList<String> latlonlist =map.get(i);
    latlonlist.add("某个String");
      

  4.   

    map.get()不是返回一个引用么?怎么会新建ArrayList对象?