Как вы исправляете ошибку: «Оператор ‘*’ не может быть применен к ‘android.widget.EditText’, ‘double'»?

#android #android-studio

#Android #android-studio

Вопрос:

          Button button = (Button) findViewById(R.id.button);
    final TextView tv= (TextView) findViewById(R.id.tv);
    final EditText distanceTxt=(EditText) findViewById(R.id.distanceTxt);
    button.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            float distance = Float.parseFloat(distanceTxt.getText().toString());
            float dec = distanceTxt * 7.9;
            float total= dec * 1;
            tv.setText(Float.toString(total));
  

Это мой код, и ошибка в основном возникает при вводе

 distanceTxt * 7.9; 
  

В нем говорится, что «Оператор ‘*’ не может быть применен к ‘android.widget.EditText’, ‘double'».

Я знаю, что ошибка может быть очевидной, но, честно говоря, я не могу в ней разобраться. Заранее благодарю вас.

Ответ №1:

Вы вычисляете distance , но вы умножаете distanceTxt .

 float dec = distance* 7.9;
  

Будет работать

Комментарии:

1. Спасибо за помощь.

Ответ №2:

Сначала вы будете использовать distance вместо distanceTxt , затем вы будете использовать float dec = (float) (distance * 7.9) , это сработает.

Комментарии:

1. Спасибо за объяснение.

2. что касается *, то я ошибаюсь.