【问题标题】:So, I am using Kotlin and I need to create an array of teams and then an incrementor to print out the number of teams in the array所以,我正在使用 Kotlin,我需要创建一个团队数组,然后创建一个增量器来打印出数组中的团队数量
【发布时间】:2022-11-17 01:31:15
【问题描述】:
fun main(args: Array<String>) {

val teams = listof("Browns", "Rams", "Eagles", "Steelers", "Redskins", "Lions", "Packers", "Bears", "Cardinals", 
"Giants")

for (name in teams) {
    print(name)
}

    
}

这是我到目前为止所拥有的,但后来我收到了这个错误。我已经尝试解决这个问题几个小时了,但似乎无法弄清楚。非常感谢您的帮助。

Unresolved reference: listof
Overload resolution ambiguity: 
public inline fun print(message: Any?): Unit defined in kotlin.io
public inline fun print(message: Boolean): Unit defined in kotlin.io
public inline fun print(message: Byte): Unit defined in kotlin.io
public inline fun print(message: Char): Unit defined in kotlin.io
public inline fun print(message: CharArray): Unit defined in kotlin.io
public inline fun print(message: Double): Unit defined in kotlin.io
public inline fun print(message: Float): Unit defined in kotlin.io
public inline fun print(message: Int): Unit defined in kotlin.io
public inline fun print(message: Long): Unit defined in kotlin.io
public inline fun print(message: Short): Unit defined in kotlin.io

【问题讨论】:

    标签: arrays kotlin increment


    【解决方案1】:

    第一个错误信息是Unresolved reference: listof,这意味着你写的listof不对应任何已知的符号。

    事实上,在你的情况下,这是因为你的名字有错字:你需要在 listOf 中使用大写字母 O(请参阅 the doc)。通常在 Kotlin 中,由多个单词组成的名称采用驼峰式书写。小驼峰命名法用于函数名称和属性,大驼峰命名法(或 Pascal 命名法)用于类型/类。您可以从文档的 Coding conventions page 中阅读更多关于约定的信息。

    另一个错误是Overload resolution ambiguity。这意味着 Kotlin 不知道您在这里谈论的是哪个 print 函数(它为您提供了它所知道的所有 print 函数的列表)。这实际上是由于第一个错误,因为编译器不知道val teams 的类型,因为它不知道未知的listof 返回什么。一旦你修正了拼写错误,第二个错误也会消失。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-03-17
      • 2023-03-04
      • 2019-05-06
      • 1970-01-01
      • 2023-03-12
      • 2019-06-18
      • 1970-01-01
      相关资源
      最近更新 更多