Array上的函数average()不起作用

我决定在Kotlin的项目中写下第一堂课。

我在文档中看到,数组上有平均函数,可迭代的http://apimirror.com/kotlin/api/latest/jvm/stdlib/kotlin.collections/-iterable/index

所以我写了这样的代码:

val numbers: IntArray = intArrayOf(11, 20, 30, 40, 50) val average: Float = numbers.average() 

它在try.kotlinlang.org工作,但在Android Studio中,我得到:

未解决的参考:平均

3 Solutions collect form web for “Array上的函数average()不起作用”

您可能会错过build.gradle文件对Kotlin标准库的依赖关系:

 dependencies { compile "org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version" ... } 

如果你还没有配置你的项目,你也可以通过Tools -> Kotlin -> Configure Kotlin in Project

一般来说,您也可以看到如何使用Android和Gradle设置Kotlin的官方文档。

根据你链接的文档,该函数返回一个Double ,而不是一个Float 。 我在IntelliJ上收到了抱怨。

试试这个:

 val numbers: IntArray = intArrayOf(11, 20, 30, 40, 50) val average: Double = numbers.average() 

或者完全忽略这些types:

 val numbers = intArrayOf(11, 20, 30, 40, 50) val average = numbers.average() 

看看平均()函数的返回types,它返回Double不浮点,所以使用Double来代替。 大多数情况下,我们在Kotlin中使用Double而不是Float。

  • Maven with Kotlin 1.2:一个需要的类缺少kotlin / reflect / KDeclarationContainer
  • Kotlin中的OnclickListener方法之间的区别
  • 检查类是否实现了接口。 科特林
  • Kotlin-JS互操作 - 使用语言结构
  • 如何将Class 与没有kotlin编译器警告的Java盒装原语types进行比较
  • Android与Kotlin - 如何使用HttpUrlConnection
  • 在Kotlin的generics中扩展类
  • 如何将字符串的某些字符与Kotlin中的HashMap 的值交换?
  • 如何将此Java代码转换为Kotlin代码?
  • Kotlin - 使用“懒”与“lateinit”的属性初始化
  • 函数返回Kotlin中的临时对象
  • Kotlin language will be the best programming language for Android.