集合A 两两一组 重新组合成集合B

来源:互联网 发布:淘宝优惠券群怎么建立 编辑:程序博客网 时间:2024/06/06 18:45

集合A 转化成 集合B(类似gridview用listview实现,将gridview的每两条数据组合成listview的一条数据)
这里写图片描述

1.Map:拼接String

public static void main(String[] args) {    Map map=new HashMap();    Map map2=new HashMap();    String s=null;    int j=0;    map.put(1,"a");    map.put(2,"b");    map.put(3,"c");    map.put(4,"d");    map.put(5,"e");    map.put(6,"f");    map.put(7,"g");    map.put(8,"h");    for(int i=1;i<=map.size();i++){        if(i%2==0){            s=s+map.get(i);            if(map.size()%2==0){                j++;                map2.put(j,s);            }else{                j++;                map2.put(j,s);            }        }else{            s=map.get(i)+"";        }        if(i==map.size()&&map.size()%2!=0){            j++;            map2.put(j,s);        }    }    System.out.println("总数"+ map2.size());    for(int i=1;i<=map2.size();i++){        System.out.println(map2.get(i));    }}

2.List集合,封装Bean类

import java.util.ArrayList;import java.util.List;/** * Created by donghui on 2016/12/7 0007. * 合并数据  集合A——>集合B * 集合A的数据两两一组组合成集合B */public class MergeDataUtils {    public static List<List<ArtworkData.ArtworkDataChild>> mergeData(List<ArtworkData.ArtworkDataChild> artworkData) {        List<List<ArtworkData.ArtworkDataChild>> list2 = new ArrayList<>();        List<ArtworkData.ArtworkDataChild> s = null;        int j = 0;        for (int i = 0; i < artworkData.size(); i++) {            if (!(i % 2 == 0)) {  //偶数或0                s.add(artworkData.get(i));                if (artworkData.size() % 2 == 0) {                    j++;                    list2.add(s);                } else {                    j++;                    list2.add(s);                }            } else { //奇数                s = new ArrayList<>();                s.add(artworkData.get(i));            }            if (i == artworkData.size() - 1 && artworkData.size() % 2 != 0) { //最后一位并且是奇数                j++;                list2.add(s);            }        }        for (int i = 0; i < list2.size(); i++) {            if(list2.get(i).size() == 1){                LogUtil.e("log:总数", list2.size() + "  1:" + list2.get(i).get(0).artistWorksId);            }else if(list2.get(i).size() == 2){                LogUtil.e("log:总数", list2.size() + "  1:" + list2.get(i).get(0).artistWorksId + "   2:" + list2.get(i).get(1).artistWorksId);            }        }        return list2;    }}
0 0
原创粉丝点击