1. ホーム
  2. groovy

[解決済み] Groovyで文字列をint型に変換する

2022-02-08 10:01:01

質問

を持っています。 String は整数値を表し、それを int . Groovy には、Java の Integer.parseInt(String) ?

解決方法は?

を使用します。 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() メソッドは非推奨となりました。以下は 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