0
私はscala Kotlinの両方に非常に新しく、いくつかのscalaコードをKotlinに変換する際に手を入れています。Scala関数をKotlin関数に変換する
私はこのスカラー関数をKotlin関数に変換することに問題があります。
def changeXToDigit(value:String): String = {
value.map {
case 'X' => random.nextInt(10).toString
case letter => letter
}.mkString
}
私はKotlinにはmkString当量がありません知っているが、私はうまくいくかもしれない
fun changeXToDigit(value: String):String = {
value.map { it ->
when(it) {
'X' -> random.nextInt(10).toString
else -> it
}
}
のようなものを考え出したがIntelliJのは、それについて不平を言うと、私はエラーによって失われたビットです。
Error:(11, 45) Kotlin: Inferred type is a function type, but a non-function type String was expected. Use either '= ...' or '{ ... }', but not both.
Javaで始まり、scalaプラグインを使用してScalaに変換することも、Kotlinプラグインを使用してJavaをKotlinに変換することもできます(IntelliJ IDEAまたはAndroid Studioを使用)。 - メニュー>ツール> Kotlin> Show Kotlin Bytecode 逆コンパイルボタンをクリック Javaコードをコピー –
Scalaの場合は、代わりにマッピング関数から文字を出力する場合は 'mkString'は必要ありません。文字列と文字の混在。 –