プログラミング 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で数値(int)を部分一致判定する

文字列に変換して判定します。 <方法> ・matchesメソッドで正規表現使う。 ・containsメソッドに判定文字を渡す。 また、メソッドに切り出すと、intを変換する処理を個別に書かなくてよくな …

【Java入門】Integerの使い方まとめ

概要 「Integerはint型のフィールドを1つだけ持つラッパークラスである」 ということが公式に書かれています。 つまりint型の値を持ち、様々なメソッドを備えたオブジェクト型であるということです …

【Java】Doubleとdoubleの違いは何か?

結論 Double:オブジェクト型 double:プリミティブ型 「Doubleはdoubleをラップしたオブジェクトである」ということです。 (・ω・´。)ん?つまりどういうこと? こゆこと。  ↓ …

【SpringBoot入門】#3~ Index画面の作成

このチュートリアルでは、簡易な書籍管理システムを作っていきます。 まず最初にIndex画面を作成していきます。 HTML作成 以下の配下にindex.htmlを作成します。 配置先:プロジェクト(ここ …

VBAが書けるまでにどのくらいかかったか?

これからVBAを学ぼうとしている人向けに参考情報として書きます。 前提 前提として、私の経歴を少し書いておきます。 ・PHPでのWeb開発1年未満 ・Javaの簡易なアプリは作れる ・SQLも理解して …

■運営者プロフィール
IT業界10年のエンジニア。
PHP -> VBA -> Javaと渡り歩いてきて、今はJavaをメインにフリーランスエンジニアとして活躍中!

[保有資格]
・Java SE 11 Gold

一度はエンジニアを辞めざるを得なかった私が再びエンジニアとして復活した数奇な物語

SpringFramworkの良書

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

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