Технически вы правильно решили проблему, вы используете один или несколько методов, но, возможно, вы пытаетесь сделать это обычным рефакторингом кода, который называется метод извлечения / функция извлечения функции Выполнение этого типаРефакторинг приводит к гораздо более читабельному и поддерживаемому коду, и его легко сделать.
Для начала определите код, который повторяется или выглядит похожим, в вашем случае следующие строки выглядят готовыми для метода извлечения:
double m_value = (int)(Math.random()*((max_value-min_value)+1))+min_value;
double x_value = (int)(Math.random()*((max_value-min_value)+1))+min_value;
double b_value = (int)(Math.random()*((max_value-min_value)+1))+min_value;
Обратите внимание, что RHS каждой строки идентичен, поэтому мы можем заменить явный код на вызов метода, подобный следующему:
double m_value = getRandomDoubleBetween(max_value, min_value);
double x_value = getRandomDoubleBetween(max_value, min_value);
double b_value = getRandomDoubleBetween(max_value, min_value);
private double getRandomDoubleBetween(double max_value, double min_value) {
return (int)(Math.random()*((max_value-min_value)+1))+min_value;
}
Вы можете идентифицировать другие области кода, которые содержат повторениеили, может быть, какой-то сложный для понимания код, который был бы более понятным, если бы он был извлечен в метод с именем, раскрывающим, что делает код.