81,092
社区成员
发帖
与我相关
我的任务
分享
for (int i = 0; i < list1.size(); i++) {
for (int j = i + 1; j < list1.size(); j++) {
if (null != list1.get(i).getMonth() && list1.get(i).getMonth().equals(list1.get(j).getMonth())) {
list1.get(i).setNum(list1.get(i).getNum() + list1.get(j).getNum());
list2.add(list1.get(j));
}
}
}
list1.removeAll(list2);
package bj;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;
import java.util.stream.Collectors;
final class App {
public static void main(String[] args) throws Throwable {
TimeVo tv1 = new TimeVo("1月", 5);
TimeVo tv2 = new TimeVo("2月", 3);
TimeVo tv3 = new TimeVo("3月", 5);
TimeVo tv4 = new TimeVo("3月", 4);
TimeVo tv5 = new TimeVo("3月", 1);
TimeVo tv6 = new TimeVo("4月", 2);
List<TimeVo> list1 = new ArrayList<TimeVo>();
list1.add(tv1);
list1.add(tv2);
list1.add(tv3);
list1.add(tv4);
list1.add(tv5);
list1.add(tv6);
List<TimeVo> resultList = list1.stream()
.collect(Collectors.groupingBy($ -> $.month))
.entrySet().stream()
.map($ -> new TimeVo($.getKey(), $.getValue().stream().mapToInt(x -> x.count).sum()))
.sorted(Comparator.comparing($ -> $.month))
.collect(Collectors.toList());
resultList.forEach($ -> System.out.println(String.format("%s:%s", $.month, $.count)));
}
static class TimeVo {
String month;
int count;
TimeVo(String month, int count) {
this.month = month;
this.count = count;
}
@Override
public String toString() {
return "TimeVo{" +
"month='" + month + '\'' +
", count=" + count +
'}';
}
}
}
List<Test1> mergeBeanList = new ArrayList<Test1>();
for (int i = 0; i < list1.size(); i++) {
Test1 bean = list1.get(i);
String tempJx002 = bean.getName();
int colspan = 1;
for (int j = i + 1; j < list1.size(); j++) {
String jx002 = list1.get(j).getName();
if (tempJx002 != null && tempJx002.equals(jx002)) {
colspan = colspan + 1;
list1.remove(j);
i = j;
i--;
j--;
} else if (j != 1 && j < list1.size() && colspan > 1) { // 中间
break;
} else if (j == 1) { // 第二条和第一条不同.
break;
}
}
Test1 test = new Test1();
test.setColspan(colspan);
test.setId(bean.getId());
test.setName(bean.getName());
mergeBeanList.add(test);
}