文書  >   Swift   >   Swift 標準ライブラリ   >   Collections   >   KeyValuePairs   >   compactMap(_:)


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


compactMap(_:)


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





宣言


func compactMap<ElementOfResult>(_ transform: ((key: Key, value: Value)) 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 compactMapped: [Int] = possibleNumbers.compactMap { str in Int(str) }
// [1, 2, 5]


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

















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












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












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












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












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












トップへ(Swift 標準ライブラリ)
目次
Xcode の新機能

  • 言語:Swift
  • SDK
  • Xcode 10.2+
  • フレームワーク
  • Swift 標準ライブラリ
  • 宣言
  • パラメータ
  • 戻り値
  • 議論












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












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












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












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












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












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