1.0ラムダ式
ラムダ式は、標準形式です:形式説明:
-
- 一貫した括弧内の構文常法パラメータリスト:空のパラメータ、複数のパラメータはカンマで区切られています。
- - >アクションを指しているのに代わって、導入された新しい構文です。
- 従来の方法で構文体が一貫した括弧を必要とします。
標準フォーマットラムダに基づき、言葉遣いのために使用されるルールを省略:
-
- 括弧内の型パラメータが省略されてもよいです。
- 括弧と一つのパラメータのみ場合は、括弧を省略することができます。
- ブレースとステートメントが1つだけにかかわらず、戻り値があるかどうかの、あなたは中括弧を省略することができた場合は、キーワードやセミコロンを返します。
機能の1.1概念
Javaで関数インタフェースは意味:1とプログラミング・インタフェース機能のための抽象インタフェースの1つの方法だけ、ラムダは、関数インタフェースは、Javaで具体化されています
ラムダは、使用されるインタフェースに適用することができます。
4つの一般的なインターフェース
生産を取得するためのサプライヤインタフェース
消費者の消費者インタフェースはandThenを受け入れます
precidateインタフェースのテストを分析したり否定
インタフェース変換機能はandThenを適用します
2.1Streamの流れ
ストリーム取得
すべてのコレクション型は、ストリームを取得するために、ストリーム()メソッドで設定することができます
静的メソッド、メソッドパラメータのストリームインタフェースが可変パラメータであり、我々は、配列を渡すことができ
一般的な方法
遅延方法:戻り値は、まだオブジェクトをストリームされ、実行されませんでした
終了方法:ストリームオブジェクトの戻り値は、数やforEachのように、実行されません
forEachの:着信消費型コネクタ
フィルタ:インタフェース種別判定が渡されます
マップ:着信インターフェイスコンバータ
注意:フローは、このストリームが閉じられているfifterストリーム、次の世代を呼び出すように、一度だけ使用、2番目の呼び出しではありません
カウント:long型の戻り値を、統計の数(endメソッド)
制限:ちょうど前に、いくつかを取ります
スキップ:わずか数を取ります
連結:つのストリーム(ストリーム静的メソッド)への2つのストリームをスプライス
3.1参照方法
あなたはラムダ式をプログラムしたい場合は、既存により参照することができます::
メンバメソッドSystem.outに参照するために、オブジェクト名を使用して::印刷出力
静的メソッド数学を参照するクラス名::には、単純な変換をABS
親クラスのメソッド> super.sayHello() - 親クラスのメソッドのスーパー::のsayHello(のメンバーによるスーパー参照)
この参照によってクラスの現在のメンバーの方法本:: buyHouse() - > this.buyHouse()メソッドサブクラス
クラスのコンストラクタの人::自動的にオブジェクトを作成]を選択するための新しい参照パラメータ
[]配列int型へ::新しい配列コンストラクタ参照が自動的に選択されたパラメータを作成しています