package my.super.duper.test.package; import org.apache.commons.lang.ArrayUtils; import java.text.DecimalFormat; import java.util.ArrayList; import java.util.List; /** * Benchmarks conversion from List to int[] for different * size lists using pure java vs Apache Commons ArrayUtils. */ public class ArrayUtilsBenchmark { private final static DecimalFormat DF = new DecimalFormat("#.##"); public static void main(String[] args) { // run loops 1M times to warm up ArrayUtilsBenchmark test = new ArrayUtilsBenchmark(); test.test(1000000); for (int i=2;i<2561;i+=i) { ArrayUtilsBenchmark testClass = new ArrayUtilsBenchmark(); testClass.test(i); } } private void test(int numElements) { List list1 = new ArrayList(numElements); for (int i=0; i list) { int[] arrayOfInt = new int[list.size()]; int i = 0; for (Integer tutId : list) { arrayOfInt[i] = tutId; i++; } return arrayOfInt; } private static int[] convertArrayUtils(List list) { return ArrayUtils.toPrimitive(list.toArray(new Integer[list.size()])); } }