日期:2014-05-17 浏览次数:20861 次
public static final String[] NO_ARRAY = {"1", "2", "3", "4", "5", "6", "7", "8", "9"};
// 循环放到list1_9里面
if(list.size() < 9) {
for (Map map : list) {
String no = map .get("no").toString();
for (int i = 0; i < list1_9.size(); i++) {
if (StringUtils.equals(no, list1_9.get(i)))) {
list1_9.remove(i);
break;
}
}
}
}
for (int i = 0; i < list1_9.size(); i++) {
Map map = new HashMap();
map.put(list1_9.get(i).toString(),"default");
list.add(map);
}
if(list.size()!=9){
for (int i = 0; i < list1_9.size(); i++) {
for(循环查询得到的list){
if(!得到的map看是否contain list1_9.get(i)的值){
没有直接加进来
}
}
}
}
------解决方案--------------------
没看明白,像你这样的还需要List<Map>么,List<String>不就完了。
你的1A,2B,3C,4D,5E,6F,7G,8H,9I是map里的数据,还是List里的数据。
看的头晕。。。
------解决方案--------------------
public List<Map<String, String>> getList(List<Map<String, String>> list){
final String[] NO_ARRAY = {"1", "2", "3", "4", "5", "6", "7", "8", "9"};
if(list!=null && list.size()>0){
for (int i = 0; i < NO_ARRAY.length; i++) {
boolean b = true ;
for (Map<String, String> map : list) {
for (String key : map.keySet()) {
if(map.get(key).equals(NO_ARRAY[i])){
b = false ;
}
}
}
if(b){
Map<String, String> map = new HashMap<String, String>() ;
map.put(NO_ARRAY[i], NO_ARRAY[i]) ;
list.add(map) ;
}
}
}else{
for (int i = 0; i < NO_ARRAY.length; i++) {
if(list==null)
list = new ArrayList<Map<String,String>>() ;
Map<String, String> map = new HashMap<String, String>() ;
map.put(NO_ARRAY[i], NO_ARRAY[i]) ;
list.add(map) ;
}
}
return list;
}