summaryrefslogtreecommitdiffstats
path: root/src/de/fhswf/in/inf/java1/aufgabe6/ListBenchmark.java
diff options
context:
space:
mode:
authorStefan Suhren <suhren.stefan@fh-swf.de>2014-12-07 19:15:58 +0100
committerStefan Suhren <suhren.stefan@fh-swf.de>2014-12-07 19:18:03 +0100
commit9acea903216dbe371dd7b41cbf23b46a5732bcb4 (patch)
tree5a61491ad22e470db8151d2e07f163b011c72d6e /src/de/fhswf/in/inf/java1/aufgabe6/ListBenchmark.java
parent8a53a8fca255e4a84ca0e35dac925a223738b98a (diff)
downloadJava1-9acea903216dbe371dd7b41cbf23b46a5732bcb4.tar.gz
Java1-9acea903216dbe371dd7b41cbf23b46a5732bcb4.zip
Refactored the packagenames fo better sorting
Diffstat (limited to 'src/de/fhswf/in/inf/java1/aufgabe6/ListBenchmark.java')
-rw-r--r--src/de/fhswf/in/inf/java1/aufgabe6/ListBenchmark.java137
1 files changed, 0 insertions, 137 deletions
diff --git a/src/de/fhswf/in/inf/java1/aufgabe6/ListBenchmark.java b/src/de/fhswf/in/inf/java1/aufgabe6/ListBenchmark.java
deleted file mode 100644
index 24e4ed4..0000000
--- a/src/de/fhswf/in/inf/java1/aufgabe6/ListBenchmark.java
+++ /dev/null
@@ -1,137 +0,0 @@
-/**
- *
- */
-package de.fhswf.in.inf.java1.aufgabe6;
-
-import java.util.ArrayList;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Random;
-import java.util.Vector;
-
-/**
- * Class that benchmarks List implementations.
- *
- * @author $Author: $
- * @version $Revision: $, $Date: $ UTC
- */
-public final class ListBenchmark
-{
-
- private static final Integer TESTOBJ = new Integer(214);
-
- /**
- * Prevents instantiation of the utility class.
- *
- */
- private ListBenchmark()
- {
- }
-
- /**
- * Starts a benchmark of different Lists and different test cases.
- *
- */
- public static void startBenchmark()
- {
- final int times = 100000;
-
- benchmarkGrouping("ArrayList", new ArrayList<Integer>(times), times);
- benchmarkGrouping("Vector", new Vector<Integer>(times), times);
- benchmarkGrouping("LinkedList", new LinkedList<Integer>(), times);
-
- }
-
- /**
- * Groups the 3 different benchmark versions together.
- *
- * @param variant
- * Name of the list type.
- * @param list
- * The list which will be benchmarked.
- * @param times
- * How often will be inserted.
- */
- private static void benchmarkGrouping(String variant, List<Integer> list,
- int times)
- {
- System.out.print(variant + " am Anfang: ");
- System.out.println(benchmarkAtBeginning(list, times) + " ms");
- System.out.print(variant + " am Ende: ");
- System.out.println(benchmarkAtEnding(list, times) + " ms");
- System.out.print(variant + " zufälliger Index: ");
- System.out.println(benchmarkAtRandom(list, times) + " ms");
- }
-
- /**
- * Inserts new value at the beginning of the list.
- *
- * @param list
- * List to be tested.
- * @param times
- * How many inserts are done.
- * @return Time in milliseconds that the action took.
- */
- private static long benchmarkAtBeginning(List<Integer> list, int times)
- {
- long start = System.currentTimeMillis(); // Gets current time in µs
-
- for (int i = 0; i < times; i++)
- {
- list.add(0, TESTOBJ);
- }
-
- return (System.currentTimeMillis() - start); // Returns runtime
- }
-
- /**
- * Inserts new value at the end of the list.
- *
- * @param list
- * List to be tested.
- * @param times
- * How many inserts are done.
- * @return Time in milliseconds that the action took.
- */
- private static long benchmarkAtEnding(List<Integer> list, int times)
- {
- long start = System.currentTimeMillis(); // Gets current time in µs
-
- for (int i = 0; i < times; i++)
- {
- list.add(TESTOBJ);
- }
-
- return (System.currentTimeMillis() - start); // Returns runtime
- }
-
- /**
- * Inserts new value at a random index of the list.
- *
- * @param list
- * List to be tested.
- * @param times
- * How many inserts are done.
- * @return Time in milliseconds that the action took.
- */
- private static long benchmarkAtRandom(List<Integer> list, int times)
- {
-
- int[] randVal = new int[times];
- Random rand = new Random();
-
- for (int i = 0; i < randVal.length; i++)
- {
- randVal[i] = rand.nextInt(list.size() + i + 1);
- }
-
- long start = System.currentTimeMillis(); // Gets current time in µs
-
- for (int i = 0; i < times; i++)
- {
- list.add(randVal[i], TESTOBJ);
- }
-
- return (System.currentTimeMillis() - start); // Returns runtime
- }
-}