Kotlin で文字列を Int に変換するさまざまな方法
-
toInt()メソッドを使用して、KotlinStringをIntに変換する -
toIntOrNull()メソッドを使用して、KotlinStringをIntに変換する -
parseInt()メソッドを使用して、KotlinStringをIntに変換する
アプリケーションまたは単純なプログラムを作成しているとします。 プログラム内の関数が整数値のみを受け入れる場合、String を Int に変換して、NumberFormatException またはその他の例外を防ぐ必要があります。
しかし、Kotlin String を Int に変換するにはどうすればよいでしょうか? それには複数の方法があります。 この記事では、Kotlin で String を Int に変換する方法をいくつか説明します。
toInt() メソッドを使用して、Kotlin String を Int に変換する
String を Int に変換するには、toInt() 関数を使用できます。 これを行うための標準的な構文を次に示します。
String.toInt()
これは、変換のために String インスタンスで toInt() メソッドを呼び出すことを意味します。 以下の例では、String "246" を Int 246 に変換するためにこの構文を使用します。
fun main() {
val strVal = "246"
val intVal = strVal.toInt()
println(intVal)
}

ご覧のとおり、上記のプログラムは String を Int に正常に変換します。 しかし、変換できない String がある場合、toInt() 関数は InvalidFormatException 例外をスローします。
デモンストレーションの目的で、上記のコードの String "246" を String "246b" に変更し、変換してみます。
fun main() {
val strVal = "246b"
val intVal = strVal.toInt()
println(intVal)
}

このプログラムは、"b" という文字を整数に変換できないため、java.lang.NumberFormatException をスローします。
したがって、例外を処理するには、try-catch ブロック内で toInt() 関数を使用する必要があります。 try-catch ブロックを使用すると、例外が発生した場合にデフォルトの出力値を割り当てることができます。
try-catch ブロックに toInt() 関数を組み込む方法は次のとおりです。
fun main(){
try {
val strVal = "246"
val intVal = strVal.toInt()
println(intVal)
} catch (e: NumberFormatException) {
println("This format is not convertible.")
}
try {
val strVal1 = "246b"
val intVal1 = strVal1.toInt()
println(intVal1)
} catch (e: NumberFormatException) {
println("This format is not convertible.")
}
}

最初の toInt() メソッドは、上記のプログラムで String "246" を Int に変換します。 しかし、2 番目の toInt() 関数が実行されると、NumberFormatException がスローされ、try-catch ブロックによって処理されます。
toIntOrNull() メソッドを使用して、Kotlin String を Int に変換する
try-catch ブロックを追加したくない場合は、代わりに toIntOrNull() 関数を使用できます。 名前が示すように、変換が失敗した場合、このメソッドは null 値を返します。
したがって、整数値のみが必要で、変換できない値について心配したくない場合は、toIntOrNull 関数を使用できます。
fun main(){
val strVal = "246"
val intVal = strVal.toIntOrNull()
println (intVal)
}

変換が成功すると、Int 値が表示されます。 ただし、変換が失敗した場合は、String が null に変換されます。
fun main(){
val strVal = "246b"
val intVal = strVal.toIntOrNull()
println (intVal)
}

parseInt() メソッドを使用して、Kotlin String を Int に変換する
Kotlin String を Int に変換するもう 1つの方法は、parseInt() 関数を使用することです。 これは toInt() メソッドと同様に機能しますが、主な違いは parseInt() がパラメーターを取ることです。
この 2つの違いのもう 1つの点は、toInt が String クラスに属し、parseInt() が Kotlin Int クラスの関数であることです。
parseInt() メソッドを使用して Kotlin String を Int に変換する方法は次のとおりです。
fun main(){
val strVal = "246"
val intVal = Integer.parseInt(strVal)
println(intVal)
}

Kailash Vaviya is a freelance writer who started writing in 2019 and has never stopped since then as he fell in love with it. He has a soft corner for technology and likes to read, learn, and write about it. His content is focused on providing information to help build a brand presence and gain engagement.
LinkedIn