Правило перезаписи не переписывает URL

Было бы неплохо, если бы у java была лучшая функциональная поддержка, так что действие, которое нужно измерить, можно было бы обернуть в блок:

measure {
   // your operation here
}

В java это можно сделать с помощью анонимные функции, которые выглядят слишком подробными

public interface Timer {
    void wrap();
}


public class Logger {

    public static void logTime(Timer timer) {
        long start = System.currentTimeMillis();
        timer.wrap();
        System.out.println("" + (System.currentTimeMillis() - start) + "ms");
    }

    public static void main(String a[]) {
        Logger.logTime(new Timer() {
            public void wrap() {
                // Your method here
                timeConsumingOperation();
            }
        });

    }

    public static void timeConsumingOperation() {
        for (int i = 0; i<=10000; i++) {
           System.out.println("i=" +i);
        }
    }
}
0
задан Toma Tomov 16 January 2019 в 09:01
поделиться