Collection
public extension Collection
public extension Collection where Index == Int
public extension Collection where Element == IntegerLiteralType, Index == Int
public extension Collection where Element: FloatingPoint
-
SwifterSwift: Performs
each
closure for each element of collection in parallel.array.forEachInParallel { item in print(item) }
Declaration
Swift
func forEachInParallel(_ each: (Self.Element) -> Void)
Parameters
each
closure to run for each element.
-
SwifterSwift: Safe protects the array from out of bounds by use of optional.
let arr = [1, 2, 3, 4, 5] arr[safe: 1] -> 2 arr[safe: 10] -> nil
Declaration
Swift
subscript(safe index: Index) -> Element? { get }
Parameters
index
index of element to access element.
-
SwifterSwift: Returns an array of slices of length “size” from the array. If array can’t be split evenly, the final slice will be the remaining elements.
[0, 2, 4, 7].group(by: 2) -> [[0, 2], [4, 7]] [0, 2, 4, 7, 6].group(by: 2) -> [[0, 2], [4, 7], [6]]
Declaration
Swift
func group(by size: Int) -> [[Element]]?
Parameters
size
The size of the slices to be returned.
Return Value
grouped self.
-
SwifterSwift: Get all indices where condition is met.
[1, 7, 1, 2, 4, 1, 8].indices(where: { $0 == 1 }) -> [0, 2, 5]
Declaration
Swift
func indices(where condition: (Element) throws -> Bool) rethrows -> [Index]?
Parameters
condition
condition to evaluate each element against.
Return Value
all indices where the specified condition evaluates to true. (optional)
-
SwifterSwift: Calls the given closure with an array of size of the parameter slice.
[0, 2, 4, 7].forEach(slice: 2) { print($0) } -> // print: [0, 2], [4, 7] [0, 2, 4, 7, 6].forEach(slice: 2) { print($0) } -> // print: [0, 2], [4, 7], [6]
Declaration
Swift
func forEach(slice: Int, body: ([Element]) throws -> Void) rethrows
Parameters
slice
size of array in each interation.
body
a closure that takes an array of slice size as a parameter.
-
SwifterSwift: Average of all elements in array.
Declaration
Swift
func average() -> Double
Return Value
the average of the array’s elements.
-
SwifterSwift: Average of all elements in array.
[1.2, 2.3, 4.5, 3.4, 4.5].average() = 3.18
Declaration
Swift
func average() -> Element
Return Value
average of the array’s elements.