Die Doppelpunkt-Notation (::) in Java stellt die folgenden Konzepte dar: Statische Methodenreferenz Klassenmethodenreferenz Konstruktorreferenz Typparameter-Inferenz
Doppelter Doppelpunkt (::) in Java
Doppelter Doppelpunkt ( :: ) Symbole repräsentieren verschiedene Konzepte in der Java-Sprache, abhängig vom Kontext, in dem sie verwendet werden.
1. Statische Methodenreferenz
Doppelter Doppelpunkt kann verwendet werden, um eine Referenz auf eine statische Methode zu erhalten. Zum Beispiel:
<code class="java">List<String> names = List.of("Alice", "Bob", "Carol"); names.forEach(System.out::println);</code>
Der obige Code verweist mit einem Doppelpunkt auf die statische Methode 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. Konstruktorreferenz🎜🎜🎜Doppelter Doppelpunkt kann auch verwendet werden, um eine Referenz auf den Konstruktor zu erhalten. Zum Beispiel: 🎜rrreee🎜Der obige Code verweist mit einem Doppelpunkt auf den Konstruktor String()
. 🎜🎜🎜4. Typparameter-Inferenz🎜🎜🎜In Java 8 und höher können Doppelpunkte für die Typparameter-Inferenz verwendet werden. Zum Beispiel: 🎜rrreee🎜Der obige Code leitet die Typparameter von Function.identity()
und String::length
mithilfe von Doppelpunkten ab. 🎜Das obige ist der detaillierte Inhalt vonWas bedeutet :: in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!