Map<Integer, VipLevelResponse> map = new HashMap<>();
for (VipLevelResponse response : responses) {
int level = response.getLevel();
if (map.containsKey(level)) {
VipLevelResponse levelResponse = new VipLevelResponse();
levelResponse.setLevel(level);
levelResponse.setCount(map.get(level).getCount() + response.getCount());
map.put(level, levelResponse);
} else {
map.put(level, response);
}
}
log.info(">>>map:[{}]", map);
List<VipLevelResponse> vipLevels = new ArrayList<>();
Iterator iter = map.entrySet().iterator();
while (iter.hasNext()) {
Map.Entry entry = (Map.Entry) iter.next();
VipLevelResponse response = (VipLevelResponse) entry.getValue();
vipLevels.add(response);
}
private String memberLevel(List<VipLevelResponse> vipLevelResponses) {
StringBuilder vipLevel = new StringBuilder();
for (VipLevelResponse vipLevelResponse : vipLevelResponses) {
int level = vipLevelResponse.getLevel();
long count = vipLevelResponse.getCount();
vipLevel.append(";").append(level).append(":").append(count);
}
if (!"".contentEquals(vipLevel)) {
vipLevel.deleteCharAt(0);
}
return vipLevel + "";
}