[Swift]露出とは?


Closerとは?

  • コードブロック
  • 、使用および転送可能な機能を含む
  • レベルのオブジェクト
  • タイプ参照.
  • 関数は名前のあるCloserです.
  • 表示方法


    一般的な表現は以下の通りです.
    { (parameters) -> return type in
    statements
    }
    参考にする.非関数定義形式のパラメータの形状を含むモジュールをinline closuresと呼ぶ.

    きほんけいじょう


    基本:Closer Expression Syntax

    reversedNames = names.sorted(by: { (s1: String, s2: String) -> Bool in return s1 > s2 } )

    要約手順1:コンテキスト内のタイプ推定


    sorded(by:)のメソッドでは、2つのStringタイプがBoolタイプを返すことを知っているため、タイプをスキップします.
    reversedNames = names.sorted(by: { s1, s2 in return s1 > s2 } )

    約ステップ2:暗黙的に単一の表示モジュールを返す


    単一表示モジュールでは、戻りキーワードを省略できます.
    reversedNames = names.sorted(by: { s1, s2 in s1 > s2 } )

    約3ステップ減算:係数名約減算(Show and Arcguments Name)


    swiftは、埋め込みモジュールに略語パラメータ名を自動的に提供し、パラメータ値を$0、$1、および$2として順次使用できます.省略形パラメータ名を使用して開くパラメータ値は、パラメータとして扱うときに使用するパラメータと同じであることが分かるので、入力パラメータ部とinキー部を省略できます.
    reversedNames = names.sorted(by: {  $0 > $1 )

    手順4:演算子メソッド


    SWIFTのStringタイプ演算子はString間の比較演算子を実現するので簡略化できる.
    reversedNames = names.sorted(by: >)