Kotlin:尽管将函数的输出转换为字符串,我仍然遇到类型不匹配的问题

问题描述 投票:0回答:1

美好的一天,

请看一下这个简单的功能。

fun multiplyByTwo(x: Int): String {  // [1]
  println("Inside multiplyByTwo") // [2]
  var result = x * 2
  result = result.toString()
  return result
}

问题是,虽然结果转换为字符串并且我已将输出声明为字符串,但我仍然遇到类型不匹配的情况。

当我使用时

var result = (x*2).toString()

而不是

var result = x * 2
  result = result.toString()

它确实有效,但感觉就像是奇怪的 java/kotlin 引擎盖下的 bs,尽管看起来完全相同。

android function kotlin variables
1个回答
0
投票

请记住 Kotlin 是一种强类型语言。解释非常简单:在第一种情况下,我们将

result
初始化为
Int
,因此它被键入为
Int
,并且我们无法在其中存储
String
。在第二种情况下,我们将其初始化为
String
,因此它的类型为
String

© www.soinside.com 2019 - 2024. All rights reserved.