利用反射來做算、邏運算

最近看到論壇有的朋友在問,什麼算法來完成 算術表達式的格式到值的計算。正好之前自己在項目中用到過,所以在這裏分享一下。

 

先附上一個之前找到的只進行常規算術運算的方法,首先聲明,該方法用於對比,並不推薦使用。

上代碼:

 

上述的第一種方法,其實就是體力活兒,而且並非沒有BUG,最重要一點是:它只能做算術運算。

我們來看看第二種方法,通過反映來做,上代碼:

第二種方法其實就是動態編譯生成一個新的類,然後利用.net來完成計算。

 

PS:還是集體力量大呀,看到其它網友的回帖,發現算術運算的另外一個簡單方法,就是利用DataTable.Compute,是否能完成邏輯運算,有待測試。

發佈了45 篇原創文章 · 獲贊 6 · 訪問量 24萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章