groovy - 在 Groovy 中将字符串转换为 int

标签 groovy

我有一个代表整数值的String,并希望将其转换为int。是否有 Java 的 Integer.parseInt(String) 的常规等效项?

最佳答案

使用toInteger()转换 String 的方法到Integer ,例如

int value = "99".toInteger()

另一种避免使用已弃用的方法(见下文)的替代方案是

int value = "66" as Integer

如果需要检查是否String 可以在执行转换之前进行转换,使用

String number = "66"

if (number.isInteger()) {
  int value = number as Integer
}

弃用更新

在 Groovy 的最新版本中 toInteger() 之一方法已被弃用。以下摘自org.codehaus.groovy.runtime.StringGroovyMethods在 Groovy 2.4.4 中

/**
 * Parse a CharSequence into an Integer
 *
 * @param self a CharSequence
 * @return an Integer
 * @since 1.8.2
 */
public static Integer toInteger(CharSequence self) {
    return Integer.valueOf(self.toString().trim());
}

/**
 * @deprecated Use the CharSequence version
 * @see #toInteger(CharSequence)
 */
@Deprecated
public static Integer toInteger(String self) {
    return toInteger((CharSequence) self);
}

您可以使用类似以下的可怕方法强制调用该方法的未弃用版本:

int num = ((CharSequence) "66").toInteger()

就我个人而言,我更喜欢:

int num = 66 as Integer

关于groovy - 在 Groovy 中将字符串转换为 int,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1713481/

相关文章:

groovy 脚本类路径

groovy - 如何在 Jenkins 脚本化管道中创建并行阶段?

java - JanusGraph 输出子图作为 GraphSON 错误

grails - 使用远程链接gsp时如何将一个字段的值设置为参数

java - 使用 Groovy 和 Java 改进代码的最佳方法、技巧和示例

testing - 无法将值传递给测试用例中的输入字段

groovy加载YAML文件修改并将其写入文件中

json - 如何将 map 列表转换为常规的groovy/grails对象?

database - Grails动态数据库连接?

gradle - 自定义gradle插件抛出无法加载类 'io.github.classgraph.ClassGraph'