java - 一种更优雅的转换方式

标签 java groovy casting

我似乎总是需要在 params 对象中强制转换值才能执行 .equals 但感觉总是不对。如果我使用 parseXXX 方法,我也必须在值为空时保护自己。似乎有更好的方法可以用像 Groovy 这样的动态语言来处理这个问题。有没有人找到一种感觉更像 Groovy 而不像 Java 的不同方式?我可以构建一个实用程序类来清理它,但我正在寻找一些内置功能,所以请不要建议额外的库

例子:

def intValue = (params.intValue)? Integer.parseInt(params.intValue) :null

Things.each{ thing -> 
    if (thing.intValue.equals(intValue)){
        //do stuff
    }
}

最佳答案

使用 Type Conversion Methods 怎么样? :

def intValue = params.int('myparam')

...there are also methods for boolean, long, char, short and so on. Each of these methods are null safe and safe from any parsing errors so you don't have to perform any addition checks on the parameters.

关于java - 一种更优雅的转换方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7045668/

相关文章:

java - 升级操作系统内核的方法

java - 列出 Google Cloud Storage Bucket 中特定时间戳后更改的文件

java - Spring Security 不使用自定义 UserDetailsS​​ervice

scripting - 'args' 在 CliBuilder 上是什么意思?

unit-testing - Grails/Spock 单元测试

java - codenameone 中 java.awt.image.BufferedImage 的替代方案是什么

c++ - 函数式转换与构造函数

C++ 将模板参数转换为其无符号版本

c# - 将对象转换为相同类型以及对性能的影响

grails - 无法通过Grails 3中的g:select检索数据