请问SimpleAdapter适配有关问题

请教SimpleAdapter适配问题
ArrayList<HashMap<String, String>> list = new ArrayList<HashMap<String,String>>();   
HashMap<String, String> map = new HashMap<String, String>();
//String strJson1 = "[{\"id\":\"1\",\"t_name\":\"liyan\",\"t_phone\":\"18782920348\"},{\"id\":\"2\",\"t_name\":\"luojia\",\"t_phone\":\"18782920347\"}]";
try {
JSONArray jsonArray = new JSONArray(s);
for (int i = 0; i < jsonArray.length(); ++i) {
JSONObject o = (JSONObject) jsonArray.get(i);
map.put("t_name", o.getString("t_name"));
map.put("t_phone",o.getString("t_phone"));
list.add(map);  
//System.out.println("id:" + o.getString("id") + ","
// + "t_name:" + o.getString("t_name") + "," 
// + "t_phone:"+ o.getString("t_phone") );
SimpleAdapter listAdapter = new SimpleAdapter(this,list, R.layout.user, new String[] {"t_name","t_phone"},   
                new int[] {R.id.t_name,R.id.t_phone});   
        //这是Adapter setListAdapter()此方法来自ListActivity   
        setListAdapter(listAdapter); 
}
  

//ArrayAdapter<String> arrayadapter =new ArrayAdapter<String>(MainActivity.this,android.R.layout.simple_expandable_list_item_1,data);
//listview1.setAdapter(arrayadapter);
} catch (JSONException e) {
e.printStackTrace();
}

请教下,为什么数据不是循环的,只是显示一个的数据,
SimpleAdapter listAdapter = new SimpleAdapter(this,list, R.layout.user, new String[] {"t_name","t_phone"},   
                new int[] {R.id.t_name,R.id.t_phone});   
        //这是Adapter setListAdapter()此方法来自ListActivity   
        setListAdapter(listAdapter); 
放假循环体外还是一样,条目数是显示对的,就是数据没有循环,只显示最后一个的,请大神帮帮忙
------解决方案--------------------
HashMap<String, String> map = new HashMap<String, String>();每次初始赋值