J2MEの文字列から数式を評価する方法J2MEの文字列から数式を評価する方法
たとえば、「2 * 4」を含む文字列です。文字列から数式を評価し、結果を8(2 * 4)にします。これはJ2MEでどうやって行うのですか?
「Java™Platform Standard Ed。6」には、文字列から数式を評価するためのパッケージ「javax.script」があります。数式を評価するためにJ2MEで使用できるパッケージやクラスがあります。文字列
J2MEの文字列から数式を評価する方法J2MEの文字列から数式を評価する方法
たとえば、「2 * 4」を含む文字列です。文字列から数式を評価し、結果を8(2 * 4)にします。これはJ2MEでどうやって行うのですか?
「Java™Platform Standard Ed。6」には、文字列から数式を評価するためのパッケージ「javax.script」があります。数式を評価するためにJ2MEで使用できるパッケージやクラスがあります。文字列
次のステップは式が中置形である文字列variable.Hereで式を読むJ2ME
にネストされた式を処理する必要がある場合は、独自のスタックベースのパーサーを作成してください。
アルゴリズムに精通していない場合は、演算子を保持するためとオペランドを保持するための2つのスタックを使用します。
基本的なケースでは、すべての演算子とオペランドをそれぞれのスタックに解析し、次に2つのオペランドと演算子をポップアップして計算し、結果をオペランドスタックに戻して評価します。演算子スタックが空になり、オペランドスタックに1つの値(結果)があるまで続行します。演算子が足りなくなり、スタックに複数の結果がある場合、式にエラーがあります。
括弧(ネストされたカッコを含む)を処理するには、左右の括弧の演算子を含めます。右の括弧に遭遇したときに式を解析すると、式がすぐに評価され始めます(2つのオペランドと演算子がポップされ、結果がオペランドスタックに戻されます)。その後、式の解析を再開します。
おかげさまで、ありがとうございました。スタックベースのパーサとは、文字列の式をpostfixに変換して評価するということですか?正しいですか他の方法ですか。問題を解決するために私に案内してください。よりフレッシュな仕事) –
こんにちはフレッドリックPennachi、 –
こんにちはフレッドリックPennachi、あなたのような情報のおかげで、ありがとう。私はスタックベースのパーサーは、文字列の式を変換してpostfixに変換することを意味すると思う?それは正しいまたは他の方法です。 J2MEの新鮮な開発者です(仕事にもっと新鮮です) –
ありがとう、このhttp://faculty.cs.niu.edu/~hutchins/csci241/eval.htmは私のために働いたが、それは1文字の長さのオペランドのために働く、私は3,5,9等を意味し、45ではなく、 34、81など。私にそれについて何か教えてください。 –