與數字打交道我有下面的代碼片段:如何在常規
mystring = "1.43 something something"
def foo = mystring =~ /(\d*.\d*).*/
def number = foo[0][1]
number = (int)(number * 2.54)
上面的代碼失敗例外:Cannot cast object '1.431.43' with class 'java.lang.String' to class 'int'
但是,如果我最後一行更改爲:number = (int)(Double.parseDouble(number) * 1.54)
那麼一切似乎都很好。
在groovy中做到這一點的最佳方法是什麼?
(int)(Double.parseDouble(number)
確實有效,但有點冗長和javaish。