2.对比前后两条数据 ;
3.筛选出正确数据。
package com.xxx.xxx; import java.util.ArrayList; import java.util.Collections; import java.util.Random; public class Test2 { final static int _capacity = 1000000; final static Random rand = new Random(System.currentTimeMillis() + _capacity); static ArrayList<String> list = new ArrayList<String>(_capacity); static ArrayList<String> newlist = new ArrayList<String>(_capacity); public static void main(String[] args) throws InterruptedException { long ts = System.currentTimeMillis(); int modVal = _capacity / 3; for (int i = 0; i < _capacity; i++) { rand.setSeed(i); list.add(Integer.toString(Math.abs(rand.nextInt() % modVal))); } ts = System.currentTimeMillis() - ts; // 生成一个100000条数据的list System.out.println("生成时间 :" + ts); test2(); } static void test() { newlist.clear(); int repetition = 0; long ts = System.currentTimeMillis(); Collections.sort(list); String str = list.get(0); int max = list.size(); for (int i = 1; i < max; i++) { if (str.equals(list.get(i))) { repetition++; continue; } newlist.add(str); str = list.get(i); } newlist.add(str); ts = System.currentTimeMillis() - ts; System.out.println("------ 排序检查方法 -------"); System.out.println("查找时间 :" + ts); System.out.println("重复 :" + repetition); System.out.println("正确 :" + newlist.size()); } }