Új hozzászólás Aktív témák

  • disy68

    aktív tag

    válasz #74220800 #9284 üzenetére

    Java 8 alatt van lehetőség metódus referenciát átadni. Akár az alábbihoz hasonlóan is elindulhatsz:
    public class MethodRuntimeChecker {

    public static void main(String[] args) {
    QuickSorter sorter = new QuickSorter();

    int[] array = getNumbers(10_000);

    System.out.println(mesureRunTimeNano(sorter::sort, array) + " ns");
    System.out.println(mesureRunTimeMilli(sorter::sort, array) + " ms");
    }

    public static long mesureRunTimeNano(Function<int[], int[]> intSorter, int[] toBeSorted) {
    long start = System.nanoTime();
    intSorter.apply(toBeSorted);
    return System.nanoTime() - start;
    }

    public static long mesureRunTimeMilli(Function<int[], int[]> intSorter, int[] toBeSorted) {
    long start = System.currentTimeMillis();
    intSorter.apply(toBeSorted);
    return System.currentTimeMillis() - start;
    }

    private static int[] getNumbers(int count) {
    int[] numbers = new int[count];
    Random random = new Random();
    for (int i = 0; i < count; i++) {
    numbers[i] = random.nextInt(count);
    }
    return numbers;
    }
    }

Új hozzászólás Aktív témák

Hirdetés