Groovyで文字列をintに変換する 質問する

Groovyで文字列をintに変換する 質問する

String整数値を表す があり、それを に変換したいと考えています。Javaintの に相当する Groovy はありますかInteger.parseInt(String)?

ベストアンサー1

メソッドを使用してを にtoInteger()変換します。例:StringInteger

int value = "99".toInteger()

非推奨の方法(下記参照)を使わない代替案としては、

int value = "66" as Integer

変換を実行する前に変換String 可能かどうかを確認する必要がある場合は、

String number = "66"

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

廃止アップデート

Groovyの最近のバージョンでは、toInteger()メソッドの1つが非推奨になっています。以下はorg.codehaus.groovy.runtime.StringGroovyMethodsGroovy 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

おすすめ記事