按索引范围快速过滤数组

标签 swift

我有一个数组,假设其中有 100 个项目,我想过滤掉 20-30 之间的所有项目。

类似这样,但这显然不正确:

myArray.filter_by_indices(20...30)

我找了又找,找不到答案。

最佳答案

您不需要过滤器。您只需调用 removeSubrange

myArray.removeSubrange(20..30)

为了完整起见,这里有一个使用过滤器的选项:

myArray = myArray.enumerated().filter { $0.offset < 20 || $0.offset > 30 }.map { $0.element }

关于按索引范围快速过滤数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49280309/

相关文章:

ios - 返回 viewController 方向。 swift

ios - 使用 [__SwiftValue set] : unrecognized selector sent to instance 将 AppDelegate 从 Objective-C 转换为 Swift 后,每次转场时应用程序都会崩溃

ios - 为什么调试器显示变量为空

ios - 从 NSUserDefaults 发出解包字符串

swift - 在 SceneKit 中绘制 3D 圆弧和螺旋线

ios - 使用 Google 登录 Xcode 时出现错误 Sigabrt

ios - 需要快速进行分段控制的指导

ios - 在 Swift 中没有 ViewDidDisappear 的情况下如何调用 ViewWillDisappear

ios - Swift 4 解码 HTML 特殊字符

ios - 加载时从 NSUserDefault 加载开关状态