Groovy相当于JavaScript isFinite()

时间:2013-08-28 16:16:30

标签: javascript groovy

isFinite(args)是一个javascript函数,如果args可以是整数,则返回true

> isFinite(3)

=>> true

> isFinite("3")

=>> true

> isFinite("az")

==>> false

我的问题是:isFinite()的groovy等价物是什么? 如果没有等价物,那么满足isFinite()

的正则表达式是什么

2 个答案:

答案 0 :(得分:2)

假设您要检查某些东西是或者可以是整数(而不是像Number.isFinite方法那样有限),您可以这样做:

def isInteger( a ) {
    a instanceof Integer || a instanceof String && a.isInteger()
}

assert isInteger( 3 )    == true
assert isInteger( '3' )  == true
assert isInteger( 'az' ) == false
assert isInteger( 4.5 )  == false

答案 1 :(得分:1)

assert "3".isNumber()
assert !'ABC'.isNumber()

您在寻找什么?这不能用于检查整数,@ tim的方法在这种情况下会很有用。