为什么set.average返回的值和array.average不同?

问题描述 投票:2回答:1

我在我的IDE中修修补补,偶然发现了一些有趣的东西。看看这段代码。

val arr1 = intArrayOf(3, 3, 2)
val set1 = setOf(3, 3, 2)

println(arr1.average())
println(set1.average())

这些代码看起来很相似,但它返回的是这个。

2.6666666666666665
2.5

为什么它们返回的值不一样?

arrays kotlin set average
1个回答
4
投票

kotlinlang.org:

集合是]一个不支持重复元素的通用无序元素集合。

这意味着,即使你将一个集合初始化为 {3, 3, 2},实际上是{3,2}。{3,2}的平均数是2.5。

© www.soinside.com 2019 - 2024. All rights reserved.