Мне сложно найти, как получить мой постфикс для оценки отрицательных чисел.Оценить пост исправление с отрицательными номерами
Мой инфикс к постфиксу, кажется, работает нормально с отрицательным числом, например, как, например, из моей программы .. инфикса: (-3) + 5 * 3 постфикс: 3-53 * +
Вот мой метод оценки, я знаю, что чем меньше кода, тем лучше, если вы хотите увидеть любой другой из моего кода, просто дайте мне знать. Я пробовал много вещей, но не повезло, любые предложения или рекомендации будут оценены!
public int evaluate(String evalute){
int number1;
int number2;
int result = 0;
int finalResult = 0;
Stack<Integer> d = new Stack<Integer>();
for(int i = 0; i < evalute.length(); i++){
char curChar = evalute.charAt(i);
if(curChar >= 48 && curChar <= 57){
int store = curChar;
store -=48;
d.push(store);
}
else if(curChar == '+'){
number1 = d.pop();
number2 = d.pop();
result = number1 + number2;
d.push(result);
}
else if(curChar == '-'){
number1 = d.pop();
number2 = d.pop();
result = number2 - number1;
d.push(result);
}
else if(curChar =='*'){
number1 = d.pop();
number2 = d.pop();
System.out.println(result = number1 * number2);
d.push(result);
}
else if(curChar =='/'){
number1 = d.pop();
number2 = d.pop();
result = number2/number1;
d.push(result);
}
}
finalResult = d.pop();
return finalResult;
}
Добавьте более подробную информацию, возможно, блок кода, чтобы уточнить ваш ответ. – UditS