-2
如果我有一個像「(10/0)+(29/0.0)+(10/0.1)」這樣的字符串,我想拋出一個除零異常。對於這種情況,我必須解析字符串並檢查分隔字符過去的所有數字。得到字符串後的字符串的具體數字
我該如何解決這個功能?
如果我有一個像「(10/0)+(29/0.0)+(10/0.1)」這樣的字符串,我想拋出一個除零異常。對於這種情況,我必須解析字符串並檢查分隔字符過去的所有數字。得到字符串後的字符串的具體數字
我該如何解決這個功能?
作爲起始的建議,你可以使用的ScriptEngine類,以它作爲評價一個JS表達式:
ScriptEngineManager manager = new ScriptEngineManager();
ScriptEngine engine = manager.getEngineByName("js");
Object result = engine.eval("(10/0) + (29/0.0) + (10/0.1)");
然後提高適當的異常。
這會拋出DivideByZero異常,否則會返回結果。
try
{
System.Data.DataTable dt = new System.Data.DataTable();
var result = dt.Compute("(10/0) + (29/0.0) + (10/0.1)", "");
//Work with further result here
}
catch(System.DivideByZeroException e)
{
//Your exception here
}
而你的問題是? –
Sry,忘記了=( – Patrik