java實現四則運算

2021-08-27 20:04:45 字數 1057 閱讀 3447

最近在考慮乙個問題:公司專案可能會使用運算模板來計算相應的值,模板freemarker、velocity都是不錯的選擇。那通過模板將計算公式字串組裝出來後,就需要解析字串得到計算結果,以下是我的實現:

public class arithmetic ;

public static void main(string args)

private boolean contains(char array, char v)

public bigdecimal parserexpression(string expression)

stack1.push(c);

} else }}

stackstack2 = new stack();

while (!stack1.isempty())

}stack2.push(o);

}return this.subexpression(stack2);

}private bigdecimal subexpression(stackstack)

}list.add(o);

}return calculation(list);

}private bigdecimal calculation(arraylistlist)

}if (priority) else

priority = false;

sign = 0;

continue;

}stack3.push(o);

}bigdecimal result = new bigdecimal(0);

while (!stack3.isempty())

if (stack3.isempty())

object abs = stack3.pop();

if (!(abs instanceof character))

char c = (character) abs;

if (c == '+') else

}return result;

}}

java四則運算

public class arithmetic implements serializable 除法 param number1 除數 param number2 被除數 param decimal 保留幾位小數點 return public static double divide string ...

實現四則運算

總結最近在看資料結構,遇到第乙個實際棧的應用,記錄 將平時的四則運算表示式又稱為中綴表示式轉化為字尾表示式。遇數字輸出,遇符號進棧,符號優先順序低於棧當前符號則輸出,輸出直到同等優先順序符號。例 9 3 1 2 輸出 棧 9 in 9 in 9 3 9 3 in 9 3 1 9 3 1 in 右括號...

四則運算java版

本題目要求編寫的是乙個簡單的計算器,該計算器目前只需要支援單位正整數的加 減 乘 除運算,並支援用括號表示優先級別。和我們小學時學過的算術規則一致,乘法和除法的優先順序一樣,加法和減法的優先順序一樣。乘除法的優先順序高於加減法。括號的優先順序最高。同一優先順序的運算順序為自左向右。public cl...