我有一个代表整数值的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/