У меня есть проект, в котором я должен сделать калькулятор, который следует правилу mdas. Я уже был в состоянии сделать это много, но что касается кодов Mdas, я понятия не имею, с чего начать.
import android.os.Build;
import android.os.Bundle;
import android.text.Editable;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import androidx.annotation.RequiresApi;
import androidx.appcompat.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity {
Button button0, button1, button2, button3, button4, button5, button6,
button7, button8, button9, buttonAdd, buttonSub, buttonDivision,
buttonMul, button10, buttonC, buttonEqual;
EditText number;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button0 = findViewById(R.id.button0);
button1 = findViewById(R.id.button1);
button2 = findViewById(R.id.button2);
button3 = findViewById(R.id.button3);
button4 = findViewById(R.id.button4);
button5 = findViewById(R.id.button5);
button6 = findViewById(R.id.button6);
button7 = findViewById(R.id.button7);
button8 = findViewById(R.id.button8);
button9 = findViewById(R.id.button9);
button10 = findViewById(R.id.button10);
buttonAdd = findViewById(R.id.buttonadd);
buttonSub = findViewById(R.id.buttonsub);
buttonMul = findViewById(R.id.buttonmul);
buttonDivision = findViewById(R.id.buttondiv);
buttonC = findViewById(R.id.buttonC);
buttonEqual = findViewById(R.id.buttoneql);
number = findViewById(R.id.edt1);
button1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
number.setText(number.getText() + "1");
}
});
button2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
number.setText(number.getText() + "2");
}
});
button3.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
number.setText(number.getText() + "3");
}
});
button4.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
number.setText(number.getText() + "4");
}
});
button5.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
number.setText(number.getText() + "5");
}
});
button6.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
number.setText(number.getText() + "6");
}
});
button7.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
number.setText(number.getText() + "7");
}
});
button8.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
number.setText(number.getText() + "8");
}
});
button9.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
number.setText(number.getText() + "9");
}
});
button0.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
number.setText(number.getText() + "0");
}
});
buttonAdd.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
number.setText(number.getText() + "+");
}
});
buttonSub.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
number.setText(number.getText() + "-");
}
});
buttonMul.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
number.setText(number.getText() + "*");
}
});
buttonDivision.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
number.setText(number.getText() + "/");
}
});
buttonEqual.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
number.getText();
String st = (String.valueOf(number.getText()));
st = st.replaceAll("\\s", "");
String[] splitStrings = (st.split("((?<=[+-/*])|(?=[+-/*]))"));
int result;
int one = Integer.parseInt(splitStrings[0]);
String operand = splitStrings[1];
int two = Integer.parseInt(splitStrings[2]);
String operandTwo = splitStrings[3];
int three = Integer.parseInt(splitStrings[4]);
String operandThree = splitStrings[5];
int four = Integer.parseInt(splitStrings[6]);
String operandFour = splitStrings[7];
int five = Integer.parseInt(splitStrings[8]);
String operandFive = splitStrings[9];
int six = Integer.parseInt(splitStrings[10]);
String operandSix = splitStrings[11];
int seven = Integer.parseInt(splitStrings[12]);
String operandSeven = splitStrings[13];
int eight = Integer.parseInt(splitStrings[14]);
String operandEight = splitStrings[15];
int nine = Integer.parseInt(splitStrings[16]);
String operandNine = splitStrings[17];
int ten = Integer.parseInt(splitStrings[18]);
String operandTen = splitStrings[19];
int eleven = Integer.parseInt(splitStrings[20]);
String operandEleven = splitStrings[21];
int twelve = Integer.parseInt(splitStrings[22]);
if (operand )
}
});
buttonC.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
number.setText("");
}
});
button10.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
number.setText(number.getText() + ".");
}
});
}
}
В моем коде я разбил строку на разные части целых чисел, за которыми следует операнд. Но я понятия не имею, как сделать код для функции MDAS.