私はアンドロイド電卓アプリを構築しようとしています。"13+23-3"
またはなどの文字列があります"40*2+3"
。この種の文字列を double に直接変換できるメソッドはありますか (正しい演算子の優先順位で)? または、自分でメソッドを作成する必要がありますか?
Double.parseDouble() と Double.valueOf() を試しましたが、どちらも変換に失敗しました。
私はアンドロイド電卓アプリを構築しようとしています。"13+23-3"
またはなどの文字列があります"40*2+3"
。この種の文字列を double に直接変換できるメソッドはありますか (正しい演算子の優先順位で)? または、自分でメソッドを作成する必要がありますか?
Double.parseDouble() と Double.valueOf() を試しましたが、どちらも変換に失敗しました。
ScriptEngineクラスを使用し、eval ()関数を使用できます。より良い方法があると思いますが、これはうまくいきますが、確かに効率的ではありません。
ScriptEngineManager m = new ScriptEngineManager();
ScriptEngine e = m.getEngineByName("js");
Object result = e.eval("13+23-3");