gpt4 book ai didi

java - 如何修复 Kotlin 中的重载分辨率歧义(无 lambda)?

转载 作者:IT老高 更新时间:2023-10-28 13:34:08 25 4
gpt4 key购买 nike

我在这一行遇到了重载解析歧义错误:

departureHourChoice!!.selectionModel.select(currentHourIndex)

供引用:

  • departureHourChoiceChoiceBox<Int> ,来自 java.scene.control

  • currentHourIndexInt

  • 重载解析不明确发生在 .select()方法;它是重载的,可以接受两种参数:(T obj)(int index) .

  • .select()方法允许 ChoiceBox 中的项目被选中,您可以通过引用该项目或其索引来确定可以选择哪一个。在这种情况下,我希望它被索引( int )选择。

  • 这是错误的照片 enter image description here

如何解决重载分辨率歧义?

最佳答案

你好像被this bug击中了作为一种解决方法,您可以:

  • 框出currentHourIndex:

    lateinit var departureHourChoice: ChoiceBox<Int>
    ...
    val currentHourIndex = 1
    departureHourChoice.selectionModel.select(currentHourIndex as Int?)
  • 或更改 ChoiceBox 的声明以使用 java.lang.Integer 而不是 Kotlin 的 Int:

    lateinit var departureHourChoice: ChoiceBox<java.lang.Integer>
    ...
    val currentHourIndex = 1
    departureHourChoice.selectionModel.select(currentHourIndex)

进一步阅读:

关于java - 如何修复 Kotlin 中的重载分辨率歧义(无 lambda)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38779666/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com