こんにちは、私は Java でいくつかのスタックを練習しており、スタックに関する問題を解決しようとしています。後置表記を取り、それを中置に変換するメソッドを作成しようとしていました。これは私がこれまでに持っているものです:
`
public void convertion() {
Stack<Integer> stack; // For evaluating the expression.
stack = new Stack<Integer>(); // Make a new, empty stack.
Scanner scan = new Scanner(postfix);
int t1, t2 = 0; //Operands
boolean check = false;
while (scan.hasNext() && !check) {
if (scan.hasNextInt()) {
int operand = scan.nextInt();
stack.push(operand);
} else {
char operator = scan.next().charAt(0);
try {
while(stack.)
} catch (EmptyStackException e) {
answer = "Malformed postfix expression";
check = true;
}
}
}
scan.close();
try {
answer = "" + stack.pop();
} catch (EmptyStackException e) {
answer = "Malformed postfix expression";
}
}
`
私が問題を抱えている部分は、試してみる部分に何を置くべきかということです。基本的には、見つけたすべての数値をスタックにプッシュしますが、演算子を見つけたら、2 つのオペランドと演算子をマージするにはどうすればよいですか。
ありがとう。