[英]Prefix Postfix Infix Java expression evaluator
我一直在研究java中的表達式評估器,出於挫折感,我也來這里詢問它。 我現在已經重寫了至少15次,但都無濟於事。
基本上我需要在前綴,中綴或后綴中使用String並將其計算為整數。 表達式可以使用java中包含的任何算術運算符。
我遇到的問題: - 當我嘗試解析表達式樹或將它們全部解析為postfix時,我遇到了單項式運算符的問題。 - 我無法將它識別為一個數字作為一個數字,隨后它會破壞整個樹或它繞數字切換。 - 我無法讓程序找出正確放下括號的位置,我無法通過堆棧識別括號的結束和結束。
所以基本上程序需要這樣做:
對於任意數字ABCDEF
在前綴postfix和中綴中進行評估:
A-- + ++ B - - C * D ++ / E%F
對於任意位ABCDEFG和數字n
評估前綴,后綴和中綴:A&B | C ^ ~D
n >> A
n << A
我的教科書沒有多大幫助,也沒有我訂購的書籍,我真的無法理解如何做到這一點,請幫忙,即使只是解釋如何做到這一點對我來說也足夠好。 謝謝你的幫助:D
假設您已經成功標記了所有標識符,運算符和文字,下一步就是閱讀一些關於遞歸下降解析器的內容。 對於這種情況,您可以手動編寫一個,而不是試圖弄清楚如何使用解析器生成器。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.