Instance Method

filter(_:)

Returns a new collection of the same type containing, in order, the elements of the original collection that satisfy the given predicate.

Declaration

func filter(_ isIncluded: (UInt8) throws -> Bool) rethrows -> Data

Parameters

isIncluded

A closure that takes an element of the sequence as its argument and returns a Boolean value indicating whether the element should be included in the returned collection.

Return Value

A collection of the elements that isIncluded allowed.

Discussion

In this example, filter(_:) is used to include only names shorter than five characters.

let cast = ["Vivien", "Marlon", "Kim", "Karl"]
let shortNames = cast.filter { $0.count < 5 }
print(shortNames)
// Prints "["Kim", "Karl"]"

Complexity: O(n), where n is the length of the collection.

See Also

Selecting Bytes

func prefix(Int) -> Data

Returns a subsequence, up to the specified maximum length, containing the initial elements of the collection.

func prefix(through: Int) -> Data

Returns a subsequence from the start of the collection through the specified position.

func prefix(upTo: Int) -> Data

Returns a subsequence from the start of the collection up to, but not including, the specified position.

func prefix(while: (UInt8) -> Bool) -> Data

Returns a subsequence containing the initial elements until predicate returns false and skipping the remaining elements.

func suffix(Int) -> Data

Returns a subsequence, up to the given maximum length, containing the final elements of the collection.

func suffix(from: Int) -> Data

Returns a subsequence from the specified position to the end of the collection.

Beta Software

This documentation contains preliminary information about an API or technology in development. This information is subject to change, and software implemented according to this documentation should be tested with final operating system software.

Learn more about using Apple's beta software