如何用 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