I have been trying to make a simple calculator on Android studio. It shows the calculations perfectly fine. but whenever I try to press equals or plus sub or minus operation when the EditText box is empty, my app always crashes.
I tried different ways but it didn't help.
Is there any way that I can do it and stop my app from crashing?
Here's my java code
package com.example.mathcalculator;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
  Button button0,button1,button2,button3,button4,button5,button6,button7,button8,button9,buttonClear,buttonMul,buttonSub,buttonAdd,buttonDec,buttonEqual,buttonDiv;
  float val1,val2;
  EditText result;
  boolean mAdditon,msubtraction,mMultiplication, mDivision;
  @Override
  protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);
      button0 = (Button) findViewById(R.id.button0);
      button1 = (Button) findViewById(R.id.button1);
      button2 = (Button) findViewById(R.id.button2);
      button3 = (Button) findViewById(R.id.button3);
      button4 = (Button) findViewById(R.id.button4);
      button5 = (Button) findViewById(R.id.button5);
      button6 = (Button) findViewById(R.id.button6);
      button7 = (Button) findViewById(R.id.button7);
      button8 = (Button) findViewById(R.id.button8);
      button9 = (Button) findViewById(R.id.button9);
      buttonAdd = (Button) findViewById(R.id.buttonAdd);
      buttonMul = (Button) findViewById(R.id.buttonMul);
      buttonDiv = (Button) findViewById(R.id.buttonDiv);
      buttonClear = (Button) findViewById(R.id.buttonClear);
      buttonEqual = (Button) findViewById(R.id.buttonEqual);
      buttonDec = (Button) findViewById(R.id.buttonDec);
      buttonSub = (Button) findViewById(R.id.buttonSub);
      result = (EditText) findViewById(R.id.result);
      button0.setOnClickListener(new View.OnClickListener() {
          @Override
          public void onClick(View v) {
              result.setText(result.getText()+"0");
          }
      });
      button1.setOnClickListener(new View.OnClickListener() {
          @Override
          public void onClick(View v) {
              result.setText(result.getText()+"1");
          }
      });
      button2.setOnClickListener(new View.OnClickListener() {
          @Override
          public void onClick(View v) {
              result.setText(result.getText()+"2");
          }
      });
      button3.setOnClickListener(new View.OnClickListener() {
          @Override
          public void onClick(View v) {
              result.setText(result.getText()+"3");
          }
      });
      button4.setOnClickListener(new View.OnClickListener() {
          @Override
          public void onClick(View v) {
              result.setText(result.getText()+"4");
          }
      });
      button5.setOnClickListener(new View.OnClickListener() {
          @Override
          public void onClick(View v) {
              result.setText(result.getText()+"5");
          }
      });
      button6.setOnClickListener(new View.OnClickListener() {
          @Override
          public void onClick(View v) {
              result.setText(result.getText()+"6");
          }
      });
      button7.setOnClickListener(new View.OnClickListener() {
          @Override
          public void onClick(View v) {
              result.setText(result.getText()+"7");
          }
      });
      button8.setOnClickListener(new View.OnClickListener() {
          @Override
          public void onClick(View v) {
              result.setText(result.getText()+"8");
          }
      });
      button9.setOnClickListener(new View.OnClickListener() {
          @Override
          public void onClick(View v) {
              result.setText(result.getText()+"9");
          }
      });
      buttonDec.setOnClickListener(new View.OnClickListener() {
          @Override
          public void onClick(View v) {
              result.setText(result.getText()+".");
          }
      });
      buttonAdd.setOnClickListener(new View.OnClickListener() {
          @Override
          public void onClick(View v) {
              if (result == null)
              {
                 result.setText("");
              }
              else
              {
                  val1 =Float.parseFloat(result.getText()+"");
                  mAdditon=true;
                  result.setText(null);
              }
          }
      });
      buttonSub.setOnClickListener(new View.OnClickListener() {
          @Override
          public void onClick(View v) {
              {
                  val1=Float.parseFloat(result.getText()+"");
                  msubtraction=true;
                  result.setText(null);
              }
          }
      });
      buttonDiv.setOnClickListener(new View.OnClickListener() {
          @Override
          public void onClick(View v) {
              {
                  val1=Float.parseFloat(result.getText()+"");
                  mDivision=true;
                  result.setText(null);
              }
          }
      });
      buttonMul.setOnClickListener(new View.OnClickListener() {
          @Override
          public void onClick(View v) {
              {
                  val1=Float.parseFloat(result.getText()+"");
                  mMultiplication = true;
                  result.setText(null);
              }
          }
      });
      buttonClear.setOnClickListener(new View.OnClickListener() {
          @Override
          public void onClick(View v) {
              result.setText("");
          }
      });
          buttonEqual.setOnClickListener(new View.OnClickListener() {
              @Override
              public void onClick(View v) {
                  val2 = Float.parseFloat(result.getText() + "");
                  if (mAdditon == true) {
                      result.setText(val1 + val2 + "");
                      mAdditon = false;
                  }
                  if (msubtraction == true) {
                      result.setText(val1 - val2 + "");
                      msubtraction = false;
                  }
                  if (mMultiplication == true) {
                      result.setText(val1 * val2 + "");
                      msubtraction = false;
                  }
                  if (mDivision == true) {
                      if (val2 == 0) {
                          result.setText("Can't Divide by Zero");
                          return;
                      } else {
                          result.setText(val1 / val2 + "");
                          msubtraction = false;
                      }
                  }
              }
          });
  }
} 
 
     
    