/**
  * 主方法调用
  *
  * @param args
  */
 public static void main(String[] args) {
   List<Integer> dataList = new ArrayList<Integer>();
   for (int i = 0; i < 12; i++) {
     dataList.add(i);
   }
   System.out.println("总数据集:" + dataList);
   long start = System.currentTimeMillis();
   WorkThread[] workThreadArray = new WorkThread[4];
   for (int i = 0; i < workThreadArray.length; i++) {
     workThreadArray[i] = new WorkThread("线程" + i, dataList.subList(i * 3, (i + 1) * 3));
     workThreadArray[i].start();
   }
   /*主线程希望等待所有的子线程都完成任务后汇总结果并展示出来*/
   for (WorkThread aWorkThread : workThreadArray) {
     try {
       aWorkThread.join();
     } catch (InterruptedException e) {
       e.printStackTrace();
     }
   }
   System.out.println("结果汇总:" + dataList);
   System.out.println("耗时:" + (System.currentTimeMillis() - start));
 }