为什么 set.average return 与 array.average 的值不同?
Why does set.average return a different value than array.average?
我在摆弄我的 IDE 时偶然发现了一些有趣的东西。查看此代码:
val arr1 = intArrayOf(3, 3, 2)
val set1 = setOf(3, 3, 2)
println(arr1.average())
println(set1.average())
这些看起来很相似,但 returns 这个:
2.6666666666666665
2.5
为什么这些返回不同的值?
[A set is] A generic unordered collection of elements that does not support duplicate elements.
这意味着即使您将集合初始化为 {3, 3, 2}
,它实际上是 {3, 2}
。 {3, 2}
的平均值是2.5。
我在摆弄我的 IDE 时偶然发现了一些有趣的东西。查看此代码:
val arr1 = intArrayOf(3, 3, 2)
val set1 = setOf(3, 3, 2)
println(arr1.average())
println(set1.average())
这些看起来很相似,但 returns 这个:
2.6666666666666665
2.5
为什么这些返回不同的值?
[A set is] A generic unordered collection of elements that does not support duplicate elements.
这意味着即使您将集合初始化为 {3, 3, 2}
,它实际上是 {3, 2}
。 {3, 2}
的平均值是2.5。