Нет, вы не можете удалить его. IntConsumer
требует ввода int
параметра.
Если в коде есть несколько мест, где вы хотите сделать одно и то же, вы можете использовать следующую технику вместо этого.
Создайте ExecutorService
и определите вспомогательный метод для повторения команды:
public static ExecutorService service = Executors.newFixedThreadPool(4); // Or any executor service you want
public static void repeat(int times, Runnable command) {
for (int i = 0; i < n; i++)
service.execute(command);
}
};
Затем используйте его следующим образом:
repeat(100, yourRunnable);
// or
repeat(100, () -> { /* do something here */ });
Метод repeat
может бытьреализовано с использованием Stream API
, но это не гарантирует параллельное выполнение ваших команд. С другой стороны, блокирует и будет ожидать выполнения всех команд. Это может быть полезно в некоторых случаях:
public static void repeat(int times, Runnable command) {
IntStream.range(0, times).parallel().forEach(__ -> command.run());
};