背景:
iTOO大小题算是最复杂逻辑,虽然查出来的数据是排序的,但是遇到大小题题型就需要重新排序,简而言之,需要对数据进行分组。什么是复杂大小题?看下图吧:
代码
所以就要给数据分组:
private List<QuestionMain> sortQuestionMains(List<QuestionMain> lists){
//分类为大小题和不是大小题
List<QuestionMain> noQuestionMains=new ArrayList<QuestionMain>();
List<QuestionMain> hasQuestionMains=new ArrayList<QuestionMain>();
List<QuestionMain> sumQuestionMains=new ArrayList<QuestionMain>();
ListMultimap<String,QuestionMain>getMutimap=ArrayListMultimap.create();
Iterator iterator =lists.iterator();
while (iterator.hasNext()) {
QuestionMain questionMain = (QuestionMain) iterator.next();
if (questionMain.getIsParentQuestion()==1) {
getMutimap.put(questionMain.getId(), questionMain);
}else if (questionMain.getParentQuestionId()!=null){
getMutimap.put(questionMain.getParentQuestionId(), questionMain);
}else{
noQuestionMains.add(ques