Java のダブル コロン (::) 表記は、次の概念を表します: 静的メソッドのリファレンス クラス メソッドのリファレンス コンストラクターのリファレンス 型パラメーターの推論
Java のダブル コロン (::)
ダブル コロン ( :: ) シンボルは、使用されるコンテキストに応じて、Java 言語のさまざまな概念を表します。
1. 静的メソッドの参照
二重コロンを使用して静的メソッドへの参照を取得できます。例:
<code class="java">List<String> names = List.of("Alice", "Bob", "Carol"); names.forEach(System.out::println);</code>
上記のコードは、二重コロンを使用して System.out.println()
静的メソッドを参照しています。 System.out.println()
静态方法。
2. 类方法引用
双冒号也可以用于获取类方法的引用。例如:
<code class="java">class Person { public void introduceYourself() { System.out.println("Hello, my name is " + name); } } List<Person> people = List.of(new Person(), new Person()); people.forEach(Person::introduceYourself);</code>
上面的代码使用双冒号引用了 Person.introduceYourself()
类方法。
3. 构造函数引用
双冒号还可以用于获取构造函数的引用。例如:
<code class="java">List<String> names = List.of("Alice", "Bob", "Carol"); Map<String, Integer> nameLengths = names.stream() .collect(Collectors.toMap(String::length));</code>
上面的代码使用双冒号引用了 String()
构造函数。
4. 类型参数推断
在 Java 8 及更高版本中,双冒号可以用于类型参数的推断。例如:
<code class="java">List<String> names = List.of("Alice", "Bob", "Carol"); Map<String, Integer> nameLengths = names.stream() .collect(Collectors.toMap(Function.identity(), String::length));</code>
上面的代码使用双冒号推断了 Function.identity()
和 String::length
person.introduceYourself()
クラス メソッドを参照しています。 🎜🎜🎜3. コンストラクター参照🎜🎜🎜二重コロンを使用してコンストラクターへの参照を取得することもできます。例: 🎜rrreee🎜 上記のコードは、二重コロンを使用して String()
コンストラクターを参照します。 🎜🎜🎜4. 型パラメータの推論🎜🎜🎜 Java 8 以降では、型パラメータの推論に二重コロンを使用できます。例: 🎜rrreee🎜 上記のコードは、二重コロンを使用して Function.identity()
と String::length
の型パラメーターを推測します。 🎜以上がJava で :: は何を意味しますかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。