文書   >   Swift 標準ライブラリ >     Collections   >   Sequence and Collection Protocols   >   Sequence   >   compactMap(_:)     Beta  


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


compactMap(_:)


このシーケンスの各要素で、指定された変換を呼び出した nil でない結果を含む配列を返します。





宣言


func compactMap<ElementOfResult>(_ transform: (Self.Element) throws ->
	ElementOfResult?) rethrows -> [ElementOfResult]


パラメータ


transformこのシーケンスの要素をその引数として受け取り、optional の値を返すクロージャ。


戻り値


シーケンスの各要素で transform を呼び出した結果の nil でない配列。


議論


このメソッドを使用して、変換で optional の値が生成されたときに、optional でない値の配列を受け取ることができます。


この例では、optional の Int 値を返す変換で mapcompactMap を使用した結果の違いに注意してください。


let possibleNumbers = ["1", "2", "three", "///4///", "5"]

let mapped: [Int?] = possibleNumbers.map { str in Int(str) }
// [1, 2, nil, nil, 5]

let flatMapped: [Int] = possibleNumbers.compactMap { str in Int(str) }
// [1, 2, 5]


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


ベータ ソフトウェア

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

Apple のベータ版ソフトウェアの使用方法の詳細 >





目次
Xcode の新機能

  • 言語:Swift
  • SDK
  • Xcode 9.3+     Beta  
  • フレームワーク
  • AppKit
  • 宣言
  • パラメータ
  • 戻り値
  • 議論












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












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












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












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












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












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












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












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












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












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












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












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












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












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












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












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












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












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












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












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