11、异步序列的转换与应用

异步序列的转换与应用

1. 异步序列转换基础

在开始深入探讨异步序列转换之前,先来看一个有趣的场景:在一家咖啡馆里,模型火车轨道贯穿其中,火车会将糕点送到顾客桌上。这就如同数据在序列中流动和转换一样。

1.1 序列修改操作

首先,我们来创建一个包含可选整数的序列,并对其进行一系列修改操作。以下是具体代码:

@MainActor
class EntryController: ObservableObject {
  @Published private(set) var entries: [Entry] = []
  private let receiver = NotificationReceiver.shared

  init() {
    let sequence
    = [7, 4, nil, 9, 1, nil, 2, 6]

    print(sequence)
    Task {
      await listenForEntries()
    }
  }
}

运行上述代码,会在控制台输出序列:

[Optional(7), Optional(4), nil, Optional(9), Optional(1), nil, Optional(2), Optional(6)]

接着,我们可以对序列进行进一步修改,比如删除第一个元素,去除 nil 值,并对剩余元素进行排序、过滤等操作:


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值