首页 > 编程语言 >group by 用java代码实现

group by 用java代码实现

时间:2023-09-20 10:34:01浏览次数:35  
标签:group money 代码 list bean new java JavaBean


import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry; public class ListGroup {
    public static void main(String[] args) {
        List<JavaBean> list = new ArrayList<JavaBean>();
        list.add(new JavaBean("来源A", 100));
        list.add(new JavaBean("来源B", 200));
        list.add(new JavaBean("来源C", 300));
        list.add(new JavaBean("来源B", 6600));
        list.add(new JavaBean("来源A", 99800));
        List<JavaBean> groupList = getListByGroup(list);
        for (JavaBean bean : groupList) {
            System.out.print(bean.getGroup() + "        ");
            System.out.println(bean.getMoney());
        }
    }
    private static List<JavaBean> getListByGroup(List<JavaBean> list) {
        List<JavaBean> result = new ArrayList<JavaBean>();
        Map<String, Integer> map = new HashMap<String, Integer>();
        for (JavaBean bean : list) {
            if (map.containsKey(bean.getGroup())) {
                map.put(bean.getGroup(), map.get(bean.getGroup()) + bean.getMoney());
            } else {
                map.put(bean.getGroup(), bean.getMoney());
            }
        }
        for (Entry<String, Integer> entry : map.entrySet()) {
            result.add(new JavaBean(entry.getKey(), entry.getValue()));
        }
        return result;
    }
}
class JavaBean {
    private String group;
    private int money;
    public JavaBean() {
    }
    public JavaBean(String group, int money) {
        this.group = group;
        this.money = money;
    }
    public String getGroup() {
        return group;
    }
    public void setGroup(String group) {
        this.group = group;
    }
    public int getMoney() {
        return money;
    }
    public void setMoney(int money) {
        this.money = money;
    }
}

 

 

http://blog.163.com/profit_2009/blog/static/122431617201143053228923/

标签:group,money,代码,list,bean,new,java,JavaBean
From: https://blog.51cto.com/u_16255870/7534753

相关文章

  • java日期操作
    将Date类型写入数据库的两种方法先了解几个类: 1、具体类(和抽象类相对)java.util.Date 2、抽象类java.text.DateFormat和它的一个具体子类,java.text.SimpleDateFormat 3、抽象类java.util.Calendar和它的一个具体子类,java.util.GregorianCalendar......
  • Java验证电子邮箱地址、电话号码
    demo1:/***本类用于处理、检查导入数据的格式*@authorAdministrator*weiwenshuai20110915*/publicclassCheckData{/***验证手机号码、电话号码是否有效*手机号前面加86的情况也考虑*新联通*(中国联通+中国网通)手机号码开头数字130、1......
  • 66基于java的志愿者服务管理系统设计与实现(配套lun文,PPT,可参考做毕业设计)
    本章节给大家带来一个基于java志愿者服务管理系统设计与实现,可适用于校园志愿者活动服务平台,校园爱心志愿者活动,爱心活动管理信息系统,大学志愿者服务平台,大学生志愿者服务平台,大学生爱心活动系统,在线志愿者活动平台,校园志愿者活动,大学志愿者活动平台等等;引言现如今,校园志愿者......
  • java将map的key转为大写
    普通的stream流,toMap方法会调用merge方法,该方法如果value传值为null的时候,会报空指针异常,因此直接使用collect()方法进行规约操作publicstaticvoidmain(String[]args){Map<String,String>testMap=newHashMap<>();testMap.put("apple",null);testMap.put("......
  • R语言风险价值:ARIMA,GARCH模型,Delta-normal法滚动估计,预测VaR(Value at Risk)和回测分析
    原文链接:http://tecdat.cn/?p=24492原文出处:拓端数据部落公众号介绍此分析的目的是帮助客户构建一个过程,以在给定时变波动性的情况下正确估计风险价值。风险价值被广泛用于衡量金融机构的市场风险。我们的时间序列数据包括1258天的股票收益。为了解释每日收益率方差的一小部......
  • R语言逻辑回归Logistic选股因素模型交易策略及沪深300指数实证|附代码数据
    全文链接:http://tecdat.cn/?p=32071原文出处:拓端数据部落公众号最近我们被客户要求撰写关于交易策略的研究报告,包括一些图形和统计输出。随着中国的证券市场规模的不断壮大、市场创新不断深化、信息披露不断完善、市场监管不断强化,随着现代投资组合理论的发展和计算机技术的进......
  • Matlab决策树对空气质量和天气温度及天气数据做交通出行推荐预测|附代码数据
    全文链接:http://tecdat.cn/?p=31784原文出处:拓端数据部落公众号最近我们被客户要求撰写关于决策树的研究报告,包括一些图形和统计输出。为解决城市交通拥堵问题,本文提出了一种基于Matlab决策树的交通预测方法,我们通过采集上海地区的空气质量数据和温度数据,帮助客户在Matlab中......
  • 十大排序算法总结及其Java代码实现
    概述基于比较的排序算法,常见的有以下几种算法最好最坏平均空间稳定性思想注意事项冒泡排序O(n)O(n^2)O(n^2)O(1)是比较最好情况需要额外判断选择排序O(n^2)O(n^2)O(n^2)O(1)否比较顺序选择元素,交换次数较多,不适合大规模数据堆排序O(nlogn)O(nlogn)O(nlogn)O(1)否选择需要使用到数据......
  • Java连接phoenix问题
    这个错误的原因是找不到文件,所以要在本地配置一下hadoop的环境变量下载将其中hadoop这个文件放在c盘windows下system32目录下就ok了 ......
  • 九月十九日(舔狗代码)
    #include<iostream>#include<easyx.h>#include<ctime>#include<windows.h>#pragmacomment(lib,"winmm.lib")#include<mmsystem.h>usingnamespacestd;voiddrawImg_s(intx,inty,IMAGE*img);voidbackground();v......