У меня есть раздел кода, который написал кто-то другой, и я не могу понять, как заставить код работать с ним. я должен сделать одну броска и отобразить число в диапазоне от 1 до 6 с помощью:Класс Die в Java с внешним кодом
(int)(math.random()*6 + 1);
Код предусмотрено это:
import java.util.*;
public class Ch3_PrExercise6
{
static Scanner console = new Scanner(System.in);
public static void main(String[] args)
{
Die die1 = new Die();
Die die2 = new Die();
System.out.println("die1: " + die1.getRoll()):
System.out.println("die2: " + die2.getRoll());
System.out.println("After rolling, die1: " + die1.rollDie());
System.out.println("After rolling, die2: " + die2.rollDie());
System.out.println("After second roll, die1: " + die1.rollDie());
System.out.println("After second roll, die2: " + die2.rollDie());
}
}
До сих пор все, что я могу придумать is:
public class Die
{
//Sets initial value to 1
public int startFace
{
startFace = 1;
}
//Roll the die
public int rollDie
{
rollDie = (int)(math.random()*6 + 1);
}
}
У меня возникли проблемы с выяснением того, что другая программа хочет от меня в линии getRoll. Я понимаю, что rollDie вызывается в последних четырех командах печати.
Я использую Обработка 2.20, Если это важно.
Вам нужно будет уточнить, что именно вы спрашиваете. Я потерялся. – nhgrif
В '' методе 'rollDie()' нет оператора return, а не 'rollDie =', используйте 'return'; это то, как производятся возвращаемые значения в Java. Также нет необходимости в методе 'startFace()' в приведенном выше примере. –
Мое лучшее предположение заключается в том, что 'getRoll()' должен возвращать текущее значение лицевой стороны штампа (т. Е. Результат последнего рулона или какое-то стандартное значение, если оно пока не показывается). Но это всего лишь предположение, основанное на моем мнении и не соответствующее SO. – FGreg