一堆整数 按连续不连续进行分类
package com.rich.bean;import java.util.ArrayList;import java.util.List;public class TestGroup {public static void main(String args[]){List list = new ArrayList();list.add(1);list.add(2);list.add(6);list.add(7);list.add(8);list.add(10);list.add(11);list.add(12);list.add(14);list.add(15);List<Rd> rdList = new ArrayList<Rd>();Rd rd = new Rd();boolean flag = true;for(int i=0; i<list.size(); i++){if(flag){rd.setStart(((Integer)list.get(i)).intValue());}Integer now = (Integer)list.get(i);if(i != list.size() -1){Integer after = (Integer)list.get(i+1);int cha = after.intValue() - now.intValue();if(cha == 1){flag = false;rd.setCount(rd.getCount()+1);}else{rd.setEnd(((Integer)list.get(i)).intValue());rd.setCount(rd.getCount()+1);rdList.add(rd);flag = true;rd = new Rd();}}else{rd.setCount(rd.getCount()+1);rd.setEnd(now.intValue());rdList.add(rd);}}for(Rd r : rdList){System.out.println("Start:"+r.getStart()+"---End:"+r.getEnd()+"--Count:"+r.getCount());}}}class Rd{int start;int end;int count = 0;public int getCount() {return count;}public void setCount(int count) {this.count = count;}public int getStart() {return start;}public void setStart(int start) {this.start = start;}public int getEnd() {return end;}public void setEnd(int end) {this.end = end;}}