プログラミング 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


関連記事

【SpringBoot入門】#9~ 更新画面の作成

左側のコンテンツ40% 右側のコンテンツ60% ※2021/01/09  画面遷移等のバックエンド側の内容が抜けていたので追記しました。 概要 検索結果一覧から編集ボタン押下で遷移してくる更新画面です …

メソッドを切り出すメリット。リーダブルなコードで行こう!

概要 大きなクラス、長いメソッドを書いたり読んだりしていて、ロジックが追えなくなってきています。 私の周りではすごく理解が良く、長い処理でも追っていける人がいますが私はそうではありません。 私はごくご …

【Java】モジュールシステムの概要と実装例

概要 Javaのモジュールシステムについて、概念的なイメージと実際のコード例で理解を深めるための記事です。 読者はJava Silverの資格勉強中の方やJava入門者を想定しています。 内容は以下の …

Camtasia(カムタジア)でKrisp(クリスプ)を使う方法

Camtasiaで動画撮影する時のノイズ除去にKrispを導入する方法です。 前提 Krisp(無料版でOK)をインストール済みであること。 Pro版を試したい方は以下の招待URLからダウンロードして …

Facadeパターンの使い道をコードとクラス図で説明します。

Facadeパターンはどんな役に立つか? 簡単にいうと、複数の処理のまとめ役。 なので、依頼1つでいろんな仕事をやってくれる点で役に立つ。 Facadeパターンの要件 Facadeクラスはあくまでサブ …

SpringFramworkの良書

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

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