很多這樣的代碼已經寫好了,但我添加的代碼是包含 ^ 和 %。它是使用堆棧以正確順序評估表達式的代碼。我遇到的麻煩是主要方法,并添加了一種獲取用戶輸入并打印出問題結果的方法。我只是包括那部分代碼16 import java.util.Stack;17 import java.util.Scanner;18 19 public class EvaluateExpression {20 public static void main(String[] args) {21 22 Scanner input = new Scanner(System.in);23 System.out.println("Enter the expression to be evaluated: ");24 String expression = input.nextLine();25 26 //Check number of arguments passed27 if (args.length != 1) {28 System.out.println("Usage: java EvaluateExpression \"expression\"");29 System.exit(1);30 }31 try {32 System.out.println(expression + " = " + 33 evaluateExpression(expression));34 }35 catch (Exception ex) {36 ex.printStackTrace();37 System.out.println("Wrong expression: " + expression);38 }39 40 }預期結果:它正在打印要與結果一起評估的表達式。但是,當我嘗試輸入隨機表達式時,這就是我得到的結果:輸入要計算的表達式:6+9*8-7用法:java EvaluateExpression "表達式"
評估表達式程序在處理用戶輸入時遇到問題
慕婉清6462132
2022-06-23 19:35:37