1

EditText フィールドに数字を入力するユーザーがいますが、フィールドにも 100+32+10 を入力できるようにしたいと考えています。単純な式のみ、一般的な 4 つの機能を期待します。実際、追加するだけでも削減できます。

追加として、文字列を分割して自分で行うのはそれほど難しくないと思いますが、私がやりたいことをもっときれいにできるライブラリがあるかどうか知りたいです。

助言がありますか?

4

2 に答える 2

2

大量の Java 式ライブラリがあります。

私はAndroid でJEXLを問題なく使用しましたが、他にもたくさんのオプションがあります。

完全な EL は必要以上かもしれません。基本的に、世界中の誰もが、あなたのニーズに合った簡単な式パーサーを書いているか、簡単なパーサーを自分で作成しています。

于 2012-08-16T19:14:02.367 に答える
1

みんなに知らせるために、私は次の数行のコードを書くことで問題を解決しました。

public float calculateBillAmount(String expression){

    String delim = "\\+";
    String[] stringTokens = expression.split(delim);
    float result = 0;

    for (int i = 0; i < stringTokens.length; i++)   {
        result += Float.parseFloat(stringTokens[i]);
    }

    return result;
}
于 2012-08-16T20:12:07.170 に答える