刚接触 swift,从书本上学习。他们在示例中使用以下内容:
var stepsTaken : Measurement<UnitLength>
所以这表明stepsTaken是一个类型为Measurement<UnitLength>
的变量
我在 Apple 开发人员文档和 UnitType 中查找了Measurement。我不明白(也没有找到解释)的是为什么 <> ?我知道您必须为测量提供 UnitType,但为什么要把它放在 < 和 > 之间?这是一种特殊的 Swift 表示法吗?我在 Swift 中查找了 Structs,但没有看到这样的符号...
我还观看了 WWDC 2016 第 238 场 session 的视频,他们在其中讨论了测量。他们使用相同的符号,但没有解释。
最佳答案
当我们创建一个测量时,我们给它一个值和一个单位。该单位成为测量的通用约束。
例如铁人三项 • 骑自行车25公里 • 3海里游泳 • 半程马拉松
让我们看看如何创建一些代表这些长度的测量
let cycleRide = Measurement(value: 25, unit: UnitLength.kilometers)
let swim = Measurement(value: 3, unit: UnitLength.nauticalMiles)
let marathon = Measurement(value: 26, unit: UnitLength.miles) + Measurement(value: 385, unit: UnitLength.yards)
马拉松的单位是米,它是UnitLength
的基本单位。这是因为我们为其添加了不同 UnitLength
实例的两个距离。
marathon.unit.symbol
swim.unit.symbol
cycleRide.unit.symbol
寻找半程马拉松:
let run = marathon / 2
总事件距离:
let triathlon = cycleRide + swim + run
关于UnitType 的 Swift 测量符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41893172/