在Groovy中检查Integer是否为Null或数字?
发布时间:2020-12-14 16:21:08 所属栏目:大数据 来源:网络整理
导读:我有一个服务方法,如果方法参数为null / blank或不是数字,则必须抛出错误. 调用者发送一个Integer值但在被调用方法中如何检查它是数字还是null. 例如: def add(value1,value2){ //have to check value1 is null/blank //check value1 is numeric}caller: cl
我有一个服务方法,如果方法参数为null / blank或不是数字,则必须抛出错误.
调用者发送一个Integer值但在被调用方法中如何检查它是数字还是null. 例如: def add(value1,value2){ //have to check value1 is null/blank //check value1 is numeric } caller: class.add(10,20) 任何建议都将不胜感激. 解决方法
更具体的是
answer of Dan Cruz,可以使用
String.isInteger() 方法:
def isValidInteger(value) { value.toString().isInteger() } assert !isValidInteger(null) assert !isValidInteger('') assert !isValidInteger(1.7) assert isValidInteger(10) 但是如果我们为我们的方法传递一个看起来像Integer的String会发生什么: assert !isValidInteger('10') // FAILS 我认为最简单的解决方案是使用instanceof运算符,所有断言都是有效的: def isValidInteger(value) { value instanceof Integer } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |