Я пытаюсь создать строковый калькулятор в Android, вот моя функция;String Calculator в Android
public void hesapla(View view) {
islemString = Islem.getText().toString();
List<String> operatorList = new ArrayList<String>();
List<String> operandList = new ArrayList<String>();
StringTokenizer st = new StringTokenizer(islemString, "+-*/()", true);
while (st.hasMoreTokens()) {
String token = st.nextToken();
if ("+-/*()".contains(token)) {
operatorList.add(token);
} else {
operandList.add(token);
}
}
for(int i=0; i>=20; i++) {
if (operatorList.get(i) == "(") {
int a=0;
while(operatorList.get(a) == ")"){
if(operatorList.get(a+1) == "+"){
sonucDouble = Double.parseDouble(String.valueOf(operandList.get(i))) + Double.parseDouble(String.valueOf(operandList.get(i+1)));
}
if(operatorList.get(a+1) == "-"){
sonucDouble = Double.parseDouble(String.valueOf(operandList.get(i))) - Double.parseDouble(String.valueOf(operandList.get(i+1)));
}
if(operatorList.get(a+1) == "*"){
sonucDouble = Double.parseDouble(String.valueOf(operandList.get(i))) * Double.parseDouble(String.valueOf(operandList.get(i+1)));
}
if(operatorList.get(a+1) == "/"){
sonucDouble = Double.parseDouble(String.valueOf(operandList.get(i)))/Double.parseDouble(String.valueOf(operandList.get(i+1)));
}
a++;
}
}
}
При нажатии кнопки «Вычислить», я получаю операнд «Список» и «Оператор», чтобы перечислить каждый из них. Но я не могу читать снова.
if (operatorList.get(i) == "(")
Я пытаюсь это сделать, но где моя ошибка? Как я могу? Спасибо.
проверить мой ответ – Sodiq