怎么把多个map放到list里,像我这样写只有最后一个map放进去了

for(int i = 0;i < org.length;i++){
map.put("id",org[i].getOrg_id());
map.put("text",org[i].getOrg_name());
map.put("qtip",org[i].getOrg_id());
map.put("level",org[i].getOrg_level());
if(org.length > 0){
map.put("leaf",false);
}else{
map.put("leaf",true);
}
list.add(map);
}

每次执行循环的时候,需要重新 new 一个 Map。map的创建应该放在for循环里面

你集合创建是在循环外面么?你的map创建是在循环里面吗?

因为你这样也只有一个map,,当然只能放进去一个

List list = new ArrayList();
for(int i = 0;i < org.length;i++){
map.put("id",org[i].getOrg_id());
map.put("text",org[i].getOrg_name());
map.put("qtip",org[i].getOrg_id());
map.put("level",org[i].getOrg_level());
if(org.length > 0){
map.put("leaf",false);
}else{
map.put("leaf",true);
}
list.add(map);
}

Sorry,还少了一行
List list = new ArrayList();
for(int i = 0;i < org.length;i++){
Map map = new HashMap();
map.put("id",org[i].getOrg_id());
map.put("text",org[i].getOrg_name());
map.put("qtip",org[i].getOrg_id());
map.put("level",org[i].getOrg_level());
if(org.length > 0){
map.put("leaf",false);
}else{
map.put("leaf",true);
}
list.add(map);
}