Collecting Parameter是我比较喜欢使用的一个模式。
其精髓为把一个参数做为收集结果的数据容器,然后把该容器当作参数传递给所有参与计算结果的方法,而从达到收集结果的效果。
例如:
其精髓为把一个参数做为收集结果的数据容器,然后把该容器当作参数传递给所有参与计算结果的方法,而从达到收集结果的效果。
例如:
private void f(Set<String> fileNames) {
Set<ResultItem> resultItems = new HashSet<ResultItem>();
for (String fileName : fileNames) {
parseFile(fileName, resultItems);
}
}
private void parseFile(String fileName, Set<ResultItem> resultItems) {
ResultItem resultItem = new ResultItem();
// parse file and set resultItem's property.
resultItems.add(resultItem);
}