Tag: apache commons仿

您是否可以使用仿函数/函数式编程在Java 7中对列表进行分组(并计算每组的元素)?

你可以分组List types = new ArrayList(Arrays.asList(TypeEnum.A, TypeEnum.B, TypeEnum.A)); 到Map countPerType; 在 Java 8 之前使用仿函数(例如Google的Guava , Apache的Commons Functor )? 我试图了解函数式编程,但我不确定这种事情是否真的可行(因为我不只是映射集合值,而是试图聚合)? 在命令式的风格,我会做这样的事情: public Map countByGroup(List types) { Map countedTypes = new HashMap(); for(TypeEnum type : types) { if(countedTypes.containsKey(type)) { countedTypes.put(type, countedTypes.get(type) + 1); } else { countedTypes.put(type, 1); } } return countedTypes; } 编辑:依赖副作用似乎有点不合适 – 或者它是如何做到的……? Procedure count […]