两者之间Kotlin有什么区别:

val customerProducts = mutableMapOf<Customer, Set<Product>>()

还有这个:
val customerProducts: MutableMap<Customer, Set<Product>> = mutableMapOf()

最佳答案

您的第二个示例将无法编译,但是我假设您的意思是:

val customerProducts: MutableMap<Customer, Set<Product>> = mutableMapOf()

要回答这个问题,没有区别。您必须在某处提供所创建的Map的类型参数,然后才能在其他位置进行推断。您要使用哪个。
  • 如果您在分配的左侧提供此信息,并使用显式变量类型,则可以通过mutableMapOf函数进行推断。
  • 如果您在mutableMapOf函数的右侧提供它,则将推断变量的类型。
  • 关于dictionary - Kotlin:集合定义的差异,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44471397/

    10-10 12:40