0

私はアンドロイド電卓アプリを構築しようとしています。"13+23-3"またはなどの文字列があります"40*2+3"。この種の文字列を double に直接変換できるメソッドはありますか (正しい演算子の優先順位で)? または、自分でメソッドを作成する必要がありますか?

Double.parseDouble() と Double.valueOf() を試しましたが、どちらも変換に失敗しました。

4

1 に答える 1

0

ScriptEngineクラスを使用し、eval ()関数を使用できます。より良い方法があると思いますが、これはうまくいきますが、確かに効率的ではありません。

ScriptEngineManager m = new ScriptEngineManager();
ScriptEngine e = m.getEngineByName("js");        
Object result = e.eval("13+23-3");
于 2013-07-05T17:14:51.227 に答える