【发布时间】:2020-06-19 02:18:32
【问题描述】:
我正在修补我的 IDE,偶然发现了一些有趣的东西。看看这段代码:
val arr1 = intArrayOf(3, 3, 2)
val set1 = setOf(3, 3, 2)
println(arr1.average())
println(set1.average())
这些看起来很相似,但它会返回:
2.6666666666666665
2.5
为什么这些返回不同的值?
【问题讨论】:
我正在修补我的 IDE,偶然发现了一些有趣的东西。看看这段代码:
val arr1 = intArrayOf(3, 3, 2)
val set1 = setOf(3, 3, 2)
println(arr1.average())
println(set1.average())
这些看起来很相似,但它会返回:
2.6666666666666665
2.5
为什么这些返回不同的值?
【问题讨论】:
[A set is] 不支持重复元素的通用无序元素集合。
这意味着即使您将一个集合初始化为{3, 3, 2},它实际上也是{3, 2}。 {3, 2} 的平均值为 2.5。
【讨论】: