q530414675 2011-10-09 10:09
浏览 301
已采纳

各位大牛,关于list ,看下这个问题.!!

在项目中遇到一个问题需要对 list中不同品牌的数据进行统计

list 结果集如下:

 阿迪达斯    运动鞋     2
 阿迪达斯    运动服     3
 阿迪达斯    跑鞋       4
 耐克        包         5
 耐克        运动裤     6

我想要的list中的结果集
阿迪达斯 运动鞋 2

阿迪达斯 运动服 3
阿迪达斯 跑鞋 4
合计 9
耐克 包 5
耐克 运动裤 6
合计 11

该怎么从list中处理?????

  • 写回答

11条回答 默认 最新

  • Mark写代码 2011-10-09 12:45
    关注

    [code="java"]import java.util.ArrayList;
    import java.util.List;

    public class Test {
    public static void main(String[] args) {
    List resultList = new ArrayList();
    List list = new ArrayList();
    String[][] str = { { "阿迪达斯", "运动鞋", "2" }, { "阿迪达斯", "运动服", "3" },
    { "阿迪达斯", "跑鞋", "4" }, { "耐克", "包", "5" },
    { "耐克", "运动裤", "6" }, { "锐步", "包", "1" }, { "锐步", "运动裤", "6" } };
    for (int i = 0; i < str.length; i++) {
    list.add(str[i]);
    }
    int count = Integer.parseInt(list.get(0)[2]);

        resultList.add(list.get(0));
        for (int i = 0; i < list.size() - 1; i++) {
            if (list.get(i)[0] == list.get(i + 1)[0]) {
                count += Integer.parseInt(list.get(i + 1)[2]);
                resultList.add(list.get(i + 1));
            } else {
                String[] temp = new String[3];
                temp[0] = "合计";
                temp[1] = "";
                temp[2] = String.valueOf(count);
                resultList.add(temp);
                resultList.add(list.get(i + 1));
                count = Integer.parseInt(list.get(i + 1)[2]);
            }
        }
        String[] temp = new String[3];
        temp[0] = "合计";
        temp[1] = "";
        temp[2] = String.valueOf(count);
        resultList.add(temp);
    }
    

    }[/code]

    仅供参考吧!!!!!!!!!!!!!!

    展开全部

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(10条)
编辑
预览

报告相同问题?

手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部