文書   >   Swift   >   Swift 標準ライブラリ   >   Collections   >   Supporting Types   >   EnumeratedSequence   >   flatMap(_:)     Beta  


汎用インスタンスメソッド


flatMap(_:)


このシーケンスの各要素で与えられた変換を呼び出した連結結果を含む配列を返します。





宣言


func flatMap<SegmentOfResult>(_ transform: ((offset: Int, element:
	 Base.Element)) throws -> SegmentOfResult) rethrows ->
	 [SegmentOfResult.Element] where SegmentOfResult : Sequence


パラメータ


transformこのシーケンスの要素をその引数として受け取り、シーケンスまたはコレクションを返すクロージャ。


戻り値


結果として得られる平坦化された配列。


議論


このメソッドを使用すると、変換によって各要素のシーケンスまたはコレクションが生成されたときに、単一レベルのコレクションを受け取ることができます。


この例では、配列を返す変換で mapflatMap を使用した結果の違いに注目してください。



let numbers = [1, 2, 3, 4]

let mapped = numbers.map { Array(repeating: $0, count: $0) }
// [[1], [2, 2], [3, 3, 3], [4, 4, 4, 4]]

let flatMapped = numbers.flatMap { Array(repeating: $0, count: $0) }
// [1, 2, 2, 3, 3, 3, 4, 4, 4, 4]



実際、s.flatMap(transform)Array(s.map(transform).joined()) と同等です。


複雑さ:O(m + n)、ここで n はこのシーケンスの長さであり、m は結果の長さです。


関連





汎用の制約


SegmentOfResult : Sequence



ベータソフトウェア

このドキュメントには、開発中の API または技術に関する予備情報が含まれています。この情報は変更されることがあり、このドキュメントに従って実装されたソフトウェアは、最終的なオペレーティングシステムソフトウェアでテストする必要があります。

Apple のベータ版ソフトウェアの使用方法の詳細について学ぶ >






目次
Xcode の新機能

  • SDK
  • Xcode 10.0+     Beta  

  • フレームワーク
  • Swift 標準ライブラリ
  • 宣言
  • パラメータ
  • 戻り値
  • 議論
  • 関連












  • トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)