Float类型的值没有枚举成员

Float类型的值没有枚举成员

我有一个阵列。目标是,删除前两个索引值,然后重新调用最大3个值(稍后对它们进行平均)。我的问题是回忆第二和第三个最大值
我的方法是回忆MAX,然后删除最大值并调用新的数组ARARY1,然后回忆这个数组中的最大值,它应该是第二个最高/最大值。
//调用最大值

var ammendedInitialArray = initialArray.dropFirst(2)
    var max = Float(-1.0)
    var stepmax1 = Int(-1)
    for (index, value) in ammendedInitialArray.enumerated() {
        if value > max{
            max = value
            stepmax1 = index
        }

以上工程
 ammendedInitialArray1 = ammendedInitialArray.remove(at: stepmax1)
    var max2 = Float(-1.0)
    var stepmax2 = Int(-1)
   *****for (index, value) in ammendedInitialArray1.enumerated{  *****
        if value > max{
            max2 = value
            stepmax2 = index
        }

****行出现错误:Float类型的值没有枚举成员
好吧,我不是说它是一个浮点数,而是一个数组。

最佳答案

你可以这样做整个手术:
例如:

var initialArray = [2,5,17,1,3,5,14,6,4,8,7,9]

var newArray = initialArray.dropFirst(2).sorted().reversed()
// ^ 17,14,9,8,7,6,5,4,3,1
let topThreeValues = Array(newArray.prefix(3))
// ^ 17,14,9
topThreeValues.reduce(0, +)/topThreeValues.count
// ^ 13

关于arrays - Float类型的值没有枚举成员,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40447823/

10-12 00:04