0

実装固有の理由により、Java 1.2 を使用する必要があります。String数値 (そのステップを抽象化するために事前に変数を置き換えます) と演算子 (PDMAS) のみでオブジェクトを解析しようとしています。私はこれをうまく行う多くのライブラリを見つけましたが、残念ながら Java 1.2 と互換性のあるライブラリはありません (いじっていても、それらはすべてジェネリックなどに依存しています)。明らかに私はこれを自分で作ることができますが、ホイールを作り直したくないのは確かです. これを行うことができる、まだ見つけていないライブラリはありますか? ありがとう。

(要件: 二項演算子と括弧)

編集: 要求に応じて、入力と出力のいくつかの例:

  • 「(10 / 5) + 4.5 - (8)」は -1.5 になります。
  • "(1/3) * 4" は 1.3333333 になります...
  • 「5^3 + 4 * 2」は 133 になります。
  • 「-10 + 5」は-5になります

うまくいけば、それは理にかなっています。

4

1 に答える 1

2

独自の再帰降下パーサーを作成できます。この Java実装ではStreamTokenizer、1.0 以降で使用できる を使用していますがint、トークンを定数に置き換え、関数識別子enumを無視する必要があります。tokenIs(Symbol.WORD)

于 2012-11-26T02:17:41.890 に答える