如何用 Java 執行對特定物件例項方法的引用?
方法引用是一種可以執行一個方法的 lambda 表示式的簡化形式。可以使用 "::" 符號進行說明。對特定物件例項方法的引用是指繫結到接收方的非靜態方法。
語法
ObjectReference::instanceMethodName
示例 - 1
import java.util.*;
public class InstanceMethodReferenceTest1 {
public static void main(String[] args) {
String[] stringArray = { "India", "Australia", "England", "Newzealand", "SouthAfrica", "Bangladesh", "WestIndies", "Zimbabwe" };
Arrays.sort(stringArray, String::compareToIgnoreCase);
System.out.println(Arrays.toString(stringArray));
}
}輸出
[Australia, Bangladesh, England, India, Newzealand, SouthAfrica, WestIndies, Zimbabwe]
示例 - 2
@FunctionalInterface
interface Operation {
public int average(int a, int b);
}
class MathUtility {
public int getAverage(int x, int y){
return (x+y)/2;
}
}
public class InstanceMethodReferenceTest2 {
public static void main(String[] args) {
MathUtility mathUtilityObject = new MathUtility();
Operation operationObject = mathUtilityObject::getAverage;
int result = operationObject.average(50, 30);
System.out.println("Average of two numbers: "+ result);
}
}輸出
Average of two numbers: 40
廣告
Data Structure
Networking
RDBMS
Operating System
Java
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP