ユーザーに123+456みたいな計算式を入力させ、その結果を算出したい。
やろうと思えば、「+等の演算子でSplitして、各変数を格納して・・・」という感じでできるかもしれないが、
こんな操作、どうしても既存のメソッドがある気がしてならない。
調べてみたところ、色々な方法が見つかった。
私的に一番わかりやすいのはDataTable.Computeメソッドを使うというものだ。
|
1 2 |
DataTable dt = new DataTable(); Int result = (int)dt.Compute("123+456", "") |
こんな感じ。
DataTableが完全にただの傀儡でちょっと気持ち悪いが、一番短く、分かりやすくかける方法だと思う。
なお、DataTable自体は割かし重いので、繰り返し実行する場合はメモリ使用量やパフォーマンスに注意が必要。
