当前位置: 首页 > news >正文

公司营销型网站制作莱芜雪野湖酒店

公司营销型网站制作,莱芜雪野湖酒店,网站开发5000,网站代码怎么查看一、背景 在日常写代码的过程中,针对List集和,统计里面的某个属性,是经常的事情,针对List的某个属性的统计,我们目前大部分时候的代码都是这样写,每统计一个变量,就要定义一个值,且…

一、背景

在日常写代码的过程中,针对List集和,统计里面的某个属性,是经常的事情,针对List的某个属性的统计,我们目前大部分时候的代码都是这样写,每统计一个变量,就要定义一个值,且要在for循环增加一行累计的代码,比较繁琐,而且代码写出来不够优雅。

	    Double chineseSum = 0d;//班级积分Double classScore = 0d;//定义变量
//        .....for(Student student : students){//统计语文成绩chineseSum += student.getChinese();//统计班级成绩classScore += student.getClassScore();//统计.....}

二、解决思路

利用顶层抽象的思维,既然要做统计,可以抽象出几个点

  • 统计的属性是什么?
  • 如何统计?
  • 统计之后的结果放到哪里?

基于这三个维度的最终核心思想:给定任意的集和,你告诉我要统计哪些属性,如何统计,我把结果统计好放到你设定的对象里面。这样有点像Spring的控制反转,调用方只要告诉我规则就好了,统计的执行过程由统计组件进行帮你统计。调用方只需要调用过后拿结果就行了。

三、实现方案

基于上面所说的思想,再结合Java 1.8的函数式编程以及泛型和设计模式,实现了List集和的属性统计组件

核心实现类图

四、关键代码展示

通过构建统计上下文进行统计,通过函数式编程的方法指定统计属性、统计规则、统计结果放到哪里

/*** 统计年龄、统计分数* @author chenfoxin* @date: 2022/9/1 17:40* @return AbstractConsolidationMode* @param statResult*/public static StatContext<StatResult> buildStatStudentContext(StatResult statResult){return new StatContext<>(statResult,//统计年龄new StatAttribute<>(Student::getAge, new IntegerStatRule(), StatResult::setAge),//统计分数new StatAttribute<>(Student::getClassScore, new DoubleStatRule(NumberConstants.INT_TWO), StatResult::setScore),//统计数学+语文成绩(组合字段)new StatAttribute<>((Function<Student, Double>) student -> DoubleUtils.add(NumberConstants.INT_TWO,student.getChinese(),student.getMath()), new DoubleStatRule(NumberConstants.INT_TWO),StatResult::setMathChinese));}
        List<Student> students = new ArrayList<>();Student stu1 = new Student(11,98D,95D,87D);Student stu2 = new Student(12,97D,56D,78D);//构建liststudents.add(stu1);students.add(stu2);//创建全局对象StatResult statResult = new StatResult();//构建统计上下文StatContext<StatResult> context = StatManager.buildStatStudentContext(statResult);//进行统计StatManager.execute(students,context);//输出结果log.info("统计结果:" + statResult);

感兴趣的朋友可以到我的博客上把源码拉取下来看看

基于JAVA 1.8函数式编程 泛型 设计模式抽象的通用 List统计组件: 设计模式、Java8新特性实战 - List<T> 抽象统计组件

http://www.yayakq.cn/news/428519/

相关文章:

  • 大棚网站怎么做设计公司资质等级
  • 注册网站给谁交钱毕业生登记表自我鉴定模板
  • 宜章泰鑫建设有限公司网站精准营销的典型案例
  • 1空间做2个网站wordpress 判断手机端
  • 企业网站的建设原则是什么?坐什么网站能用到html5
  • 局域网站点建设方案跑业务怎么找客户
  • 专业的免费建站软件开发工程师证
  • 大庆网站建设微信放在网站根目录
  • 南阳理工网站建设管理咨询公司如何开发客户
  • 医疗营销网站建设如何阿里网站建设
  • 大兴网站设计wordpress慕课网
  • 网站如何做才能被360收录wordpress网站换主题
  • 网站建设佰金手指科杰三网站开发语言 asp
  • 旅游网站前端建设论文网站建设排名北京
  • 图片网站 模板桂林市建设工程造价管理站网站
  • 网站开发如何入门商城网站开发费用
  • 网络营销网站策划云南网站开发报价
  • 做外贸网站有什么用wordpress 宅男猫源码
  • 做新年公告图片的网站宿迁房产网丫丫
  • 企业网站开发服务上海网站建设报价表
  • 回收类型网站如何做自贸区注册公司
  • 网站开发与网页后台开发现在可以做网站么
  • 闵行网站设计开发和发布网站的主要流程
  • 浙江网站建设公司地址做哪个外贸网站不用交费
  • 安徽省六安市建设工程信息网seo关键词优化外包公司
  • 深圳商城网站建设报价单wordpress企业站制作
  • 定西市建设网站费用IP网站登记
  • 网站代码字体变大洛阳市住房和城乡建设网站
  • vps服务器怎么创建多个网站网站建设职位有什么
  • 自己做网站要会什么软件下载公司网站建设费用如何做账