Хорошо, Моя проблема в том, что 2-й оператор if и 3rd if выдает оператор «< ''> 'не определен.Two Dice 2 Java Issue
Это должно быть два значения int и показать, что они могут делать меньше или больше, не уверен, почему он не работает на моем конце. Вот два кода:
public class TwoDice2 {
public static void main(String[ ] args) {
Die firstDie = new Die();
Die secondDie = new Die();
if (firstDie == secondDie) {
System.out.println("First die is " + firstDie.getValue());
System.out.println("Next die is " + secondDie.getValue());
System.out.println("The two dice are the same!");
}
if (firstDie > secondDie) {
System.out.println("First die is " + firstDie.getValue());
System.out.println("Next die is " + secondDie.getValue());
System.out.println("Die One: " + firstDie + " is greater than Die Two: " + secondDie);
}
if (firstDie < secondDie) {
System.out.println("First die is " + firstDie.getValue());
System.out.println("Next die is " + secondDie.getValue());
System.out.println("Die One: " + firstDie + " is less than Die Two: " + secondDie);
}
}
}
И:
public class Die {
private int value;
private static final int HIGHEST_DIE_VALUE = 6;
private static final int LOWEST_DIE_VALUE = 1;
public Die() {
value = ((int)(Math.random() * 100) % HIGHEST_DIE_VALUE + LOWEST_DIE_VALUE);
} public int getValue() { return value; } }
Die are not ints. Вы probaby хотите сравнить 'firstDie.getValue()' с тем же для secondDie. Также ваш '==' будет терпеть неудачу, поскольку проверяет ссылочное равенство. И если вы не дадите своему классу Die достойный метод 'equals' и' hashCode', метод equals будет терпеть неудачу. Если вы не сравните * значения *. –