ホームページ > Java > &#&チュートリアル > Java でラムダ式を使用する方法を学ぶ

Java でラムダ式を使用する方法を学ぶ

王林
リリース: 2023-06-16 08:11:55
オリジナル
1229 人が閲覧しました

現在、Java は最も広く使用されているプログラミング言語の 1 つになりました。 Java 8 ではラムダ式が導入され、Java の使用がより簡潔、効率的、柔軟になりました。この記事では、初心者がこの機能をすぐにマスターできるように、ラムダ式の概念、使用法、例を紹介します。

1. ラムダ式の概念

ラムダ式は、メソッドに渡すことができる便利な匿名関数です。これは渡されたコードのブロックを表し、コードをよりクリーンかつ柔軟に記述する方法として使用できます。

ラムダ式は 3 つの部分で構成されます:

  1. パラメータ リスト: ラムダ式へのデータ入力;
  2. 矢印 (->): 分割シンボル、それを示します渡されたパラメータとラムダ式の関係;
  3. コード ブロック: ラムダ式で実行されるコード。

2. ラムダ式の使用

Java の関数インターフェイスを使用したことがある場合、ラムダ式は非常に簡単に習得できます。 Java の関数型インターフェイスとは、抽象メソッドが 1 つだけあるインターフェイスを指します。ラムダ式は、コードの読みやすさと保守性を簡素化し、強化するために、これらの関数インターフェイスでよく使用されます。

ラムダ式を使用するときは、次の点に注意する必要があります。

  1. 関数型インターフェイスの定義: ラムダ式のターゲット型は関数型インターフェイスである必要があります。抽象メソッド インターフェイスが 1 つだけあります。たとえば、Java 8 の Function と Predicate はどちらも関数インターフェイスです。
  2. 矢印 (->) の意味: 渡されたパラメーターとラムダ式の間の関係を示します。
  3. コード ブロックの定義: Lambda 式のコード ブロックは、式またはステートメント ブロックにすることができます。

3. ラムダ式の例

以下は、理解を深めるためのラムダ式の例です:

  1. ラムダ式を使用して走査するコレクション

List list = Arrays.asList("Apple", "Orange", "Banana");
list.forEach(str -> System.out. println (str));

  1. ラムダ式を使用してコレクションを並べ替える

List list = Arrays.asList(5, 3, 1, 2, 4) ;
Collections.sort(list, (a, b) -> a.compareTo(b));
System.out.println(list);

  1. ラムダ式を使用するコレクションをフィルターします

List list = Arrays.asList(1, 2, 3, 4, 5);
List newList = list.stream( ).filter( num -> num % 2 == 0).collect(Collectors.toList());
System.out.println(newList);

  1. 関数型インターフェイスでラムダ式を使用する

パブリック インターフェイス Function {

R apply(T t);
ログイン後にコピー

}

Function intToString = num -> String.valueOf(num);
String str = intToString.apply(10);
System.out.println(str);

4. 概要

ラムダ式は Java 8 の重要な機能です。コードをより簡潔、柔軟、そして読みやすくすることができます。この記事では、ラムダ式の概念、使い方、例を紹介し、初心者の方の参考になれば幸いです。 Lambda 式の使用をマスターすると、より効率的で、合理化され、保守しやすい Java コードを簡単に作成できるようになります。

以上がJava でラムダ式を使用する方法を学ぶの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート