#android #arrays #random #operator-keyword
#Android #массивы #Случайный #оператор-ключевое слово
Вопрос:
Я получаю сообщение, как указано в названии, при запуске этого кода:
if (houseArray.size() > 0 amp;amp; houseArray.get(0).getY() == random() ) {
addNewHouse();
addNewRightHouse();
};
Я хочу, чтобы мой код запускал эти две функции, когда дом передает случайную Y-координату.
Это функция random():
private void random() {
MathUtils.random(0, 1200);
}
Что я мог делать не так?
Заранее спасибо
Комментарии:
1. Я не понимаю, почему вы пытаетесь выполнить
==
random()
метод on, потому что возвращаемый тип вашего метода — void, что означает, что он ничего не возвращает. и если он ничего не возвращает, то вы не можете сравнить его с чем-то.. вам нужно сформулировать свой вопрос относительно того, чего вы пытаетесь достичь.2. Итак, проблема заключается в объявлении метода random()? Какой тип возвращаемого значения я должен установить?
Ответ №1:
Измените свой случайный метод на этот:
private float random() {
return MathUtils.random(0, 1200);
}
Или, что еще лучше, вместо создания метода, который вызывает другой метод, вы могли бы написать
if (houseArray.size() > 0
amp;amp; houseArray.get(0).getY() == MathUtils.random(0, 1200)) {
addNewHouse();
addNewRightHouse();
}
Комментарии:
1. Он по-прежнему не будет добавлять эти дома .. :(два начальных дома просто попадают в нижний конец.
2. @user3091110 Не стесняйтесь задавать другой вопрос с необходимыми деталями, которые позволят нам помочь вам решить вашу проблему.