我有一个字符串,表示一个整数值,并希望将其转换为int。groovy中是否有类似于Java的Integer.parseInt(String)?


当前回答

这是另一种方法。如果你不喜欢异常。

def strnumber = "100"
def intValue = strnumber.isInteger() ?  (strnumber as int) : null

其他回答

Groovy样式转换:

Integer num = '589' as Integer

如果你有请求参数:

Integer age = params.int('age')

toInteger()方法在groovy中是可用的,您可以使用它。

Groovy可以很好地接受Java表单。如果你问是否有一个Groovier的方法,有一个方法去整数。

如下所示:

String s = "99"
assert 99 == Integer.parseInt(s)
Integer i = s as Integer
assert 99 == i

我不确定它是否在groovy的最新版本中被引入(最初的答案相当古老),但现在您可以使用:

def num = mystring?.isInteger() ? mystring.toInteger() : null

or

def num = mystring?.isFloat() ? mystring.toFloat() : null

如果所提供的字符串不可靠,我建议使用浮点数甚至双精度数来代替整数。

有几种方法,这是我最喜欢的:

def number = '123' as int