swift - 在 Swift 中映射几何系列的功能方法

标签 swift

我有一个大小为 n 的数组。我想用函数方法用几何级数的值填充它。
我应该使用什么功能?

结果应该是一个数组,例如:

[a, a^2, a^3, ... a^n]

最佳答案

您可以使用 sequence(first:next:)计算权力 a 通过重复乘法,用 prefix(_:) 限制(延迟求值的)序列到所需的条目数,然后从截断的序列创建一个数组。示例:

let a = 0.5   // The base
let n = 4     // The maximal exponent

let series = Array(sequence(first: a, next: { $0 * a }).prefix(n))
print(series) // [0.5, 0.25, 0.125, 0.0625]

另一种选择是枚举序列而不创建 实际数组:

for x in sequence(first: a, next: { $0 * a }).prefix(n) {
    // do something with `x`
}

关于swift - 在 Swift 中映射几何系列的功能方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49874278/

相关文章:

swift - 我如何从嵌入在 UITableViewCell (Swift) 中的 UICollectionView 的单元格中分离出来?

ios - 在 Swift 中重写 UIButton 的 setEnabled 方法

ios - ARKit 中节点函数的渲染器 didUpdate 未被执​​行

ios - 在 UIButton 状态为 .disabled 时更改其颜色

ios - 在 tableview 单元格内单击更改按钮

ios - 在MTKView上渲染MTLTexture不能保持宽高比

ios - CNContactVCardSerialization.dataWithContacts 给出异常

ios - 如何分别使用 Alamofire 发送参数和正文?

macos - (NSMenuItem) : missing setter or instance variable

ios - 如何在成功登录后重置 touchIDLockout?