iOS: 无法从范围<CGFloat> 中获取第一项值

iOS: Can't get first item value from Range<CGFloat>

我有一个带浮点数的范围。我需要获取范围的第一个和最后一个元素。使用 Range 一切正常。但是,当我尝试从浮点范围获取值时,出现错误 "Ambiguous reference to member 'first'"。如何从浮点范围获取值?

我试过转换、展开 - 同样的错误。查看有类似问题的帖子,但似乎没有任何效果。

设范围:范围=1.0..<3.22

首先:CGFloat = range.first (!)(对成员的引用不明确 'first')

我希望从范围中获取第一项,但我收到了错误。

firstCollection 协议的一种方法(而 lastBidirectionalCollection 的一种方法)。仅当基础元素类型是整数类型或符合具有整数跨度的 Strideable 协议的任何其他类型时,Range 才是(双向)集合。示例:

let intRange = 1..<10
print(intRange.first!) // 1
print(intRange.last!)  // 9

一系列浮点数不是集合,所以没有firstlast方法。但是你可以检索 lower/upper bound:

let range: Range<CGFloat> = 1.0..<3.22
print(range.lowerBound)  // 1.0
print(range.upperBound)  // 3.22