プログラミング Java

【Java入門】ラムダ式の基本構文と変数スコープ

投稿日:

概要

Javaにおけるラムダ式について解説します。

ラムダ式とは?

OracleのJavaドキュメントに簡潔な説明があったので引用したいと思います。

Lambda expressions enable you to do this, to treat functionality as method argument, or code as data.

ラムダ式を使用すると、機能をメソッド引数として処理したり、コードをデータとして扱うことができます。

まだ「?」という方は、これからわかっていくので、そういうものなんだなぁと思っておいてください。

基本構文

関数型インターフェースの型 変数名 = (引数) -> {処理};

関数型インターフェースには以下があります。

変数スコープ

・ラムダ式の変数はローカル変数と重複してはならない
以下のように、ローカル変数:strと同じ変数名をラムダ式の引数に指定すると、ローカル変数の再定義をしているとみなされてコンパイルエラーになります。

 
・ラムダ式の処理で再利用できる変数はfinalまたは実質的にfinalある必要がある
 othreStrをラムダ式の行のあとで、modifyメソッドで上書きする処理をしています。
 これにより、othreStrは実質的にfinalではなくなるため、コンパイルエラーになります。

 

試験対策

Java Silverを受験する場合に押さえて置くポイントについてです。

理解しておくべきは、個々の関数型インターフェースの特徴と基本的な使い方です。
あとは、変数のスコープといったところです。

Java Silverの試験ではラムダ式に関しては2問ほどしか出題されない可能性があります。
これは黒本の模擬試験2回分を調べた結果なので、実際の試験でも必ず2問しか出ないというわけではないことはご承知おき下さい。
(もし出題されても2問程度なので、どうしてもわからない場合は最初から捨てるという選択もできるという意味でお伝えさせて頂いています)
 

まとめ

  • ラムダ式とは、機能をメソッド引数として処理したり、コードをデータとして扱うことができるものである。
  • 基本構文は、関数型インターフェースの型 変数名 = (引数) -> {処理}; である。
  • 変数スコープにおいては以下2点に注意する。
    ・ラムダ式の変数はローカル変数と重複してはならない
    ・ラムダ式の処理で再利用できる変数はfinalまたは実質的にfinalある必要がある
  • Java Silverの試験にラムダ式は2問ほどしか出題されない想定である。

 
最後までお読み頂き、ありがとうございました!
ご意見・ご要望がありましたら、遠慮なくコメント下さい!
もし内容が良かったらランキング評価を頂けると励みになります(^^)

ランキング評価する

-プログラミング, Java
-, ,

執筆者:


comment

メールアドレスが公開されることはありません。

CAPTCHA


関連記事

【Java】Stringのequalsで定数を左側にする理由

JavaのStringでequalsによる等価判定を行う場合に、 比較対象となる定数は左側にする理由はNullPointerExceptionを回避するためです。 以降、NullPointerExce …

【Javaサンプル】自動販売機(Level3) クラス分け

自動販売機(Level2)では、小さいメソッドに処理を切り出すことを学びました。 しかし、まだMainクラス1つの中で完結しているプログラムです。 オブジェクト指向言語であるJavaを使うなら、クラス …

【Bootstrap】共通ヘッダーをナビバーとしてデザインしよう!

概要 ヘッダーをナビバーとして実装します。 (SpringBootチュートリアルの共通ヘッダーを基に解説していきます) また、デザインはBootstrapのサンプルを基にしていますので、 そちらも一度 …

ユニークなListを持つファーストクラスコレクションの例

概要 正確に言うとListではなくSetです。 自分の確認と備忘録なのでご参考までに。 実装 ユニークなリストとしてSetで保持します。 Item 保持するオブジェクトです。 [crayon-6335 …

【Java】ArrayListの使い方まとめ

概要 ArrayListはOracleの公式ページでも明記しているクラスです。 Java SE 11 Programmer I (1Z0-815-JPN) 試験 インタフェースによる抽象化 インタフェ …

SpringFramworkの良書

■おすすめ教材
Javaの基本を学んだ人が、次のステップとして読む本(中級者向け)

※SpringはJavaのFrameworkの1つです。
変更のしやすさ、保守性の高さが特徴です。