Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package my.super.duper.test.package;
- import org.apache.commons.lang.ArrayUtils;
- import java.util.ArrayList;
- import java.util.List;
- /**
- * Benchmarks conversion from List<Integer> to int[] for different
- * size lists using pure java vs Apache Commons ArrayUtils.
- */
- public class ArrayUtilsBenchmark
- {
- public static void main(String[] args)
- {
- for (int i=5;i<2561;i+=i) {
- ArrayUtilsBenchmark testClass = new ArrayUtilsBenchmark();
- testClass.test(i);
- }
- }
- private void test(int numElements) {
- List<Integer> list1 = new ArrayList<Integer>(numElements);
- for (int i=0; i<numElements; i++) {
- list1.add(new Integer(i*((int)(Math.random()*100))));
- }
- System.out.println("Comparison for " + list1.size() + " elements");
- long start1 = System.nanoTime();
- int[] primList1 = convertPureJava(list1);
- final long dur1 = System.nanoTime() - start1;
- System.out.println("pure java: " + dur1 + " ns");
- long start2 = System.nanoTime();
- int[] primList2 = convertArrayUtils(list1);
- final long dur2 = System.nanoTime() - start2;
- System.out.println("array utils: " + dur2 + " ns");
- System.out.println("factor: "+dur2/dur1);
- System.out.println("----------------------------");
- }
- private static int[] convertPureJava(List<Integer> tutorialIdsList)
- {
- int[] arrayOfInt = new int[tutorialIdsList.size()];
- int i = 0;
- for (Integer tutId : tutorialIdsList) {
- arrayOfInt[i] = tutId;
- i++;
- }
- return arrayOfInt;
- }
- private static int[] convertArrayUtils(List<Integer> tutorialIdsList)
- {
- return ArrayUtils.toPrimitive(tutorialIdsList.toArray(new Integer[tutorialIdsList.size()]));
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement