return не прерывает метод (java, android studio)
В колледже мне дали задание разработать калькулятор с нуля. При этом нам особых знаний по java не давали, поэтому я и спрашиваю, нигде про это найти не могу. Ниже написан код метода при нажатии на кнопку цифры или точки при дробных числах. Но return при повторном нажатии на точку не дает выйти из метода и появляется вторая точка в числе. Изначально decimal стоит на false. При нажатии на кнопку операций и равно также ставится false. number_text - это элемент xml EditText, куда выводится само число. (Логика записи числа в отдельную переменную для операций с ними еще не реализована)
public void onNumberClick(View view) {
Button button = (Button) view;
if (decimal && button.getText().toString().equals(".")){
return;
}
if (number_text.getText().toString().equals("0") && button.getText() != "0" && button.getText() != "."
|| number_text.getText().toString().equals(lastOperation)){
number_text.setText("");
}
number_text.append(button.getText());
if (button.getText() == "."){
decimal = true;
}
}
Ответы (1 шт):
Автор решения: BaDuMoK
→ Ссылка
Вопрос решился. Нужно было указать
if (button.getText().toString().equals("."))
вместо
if (button.getText() == ".")