我有一个代码段:
private static <T> Provider<T> getProviderInstance(T value) {
return new Provider<T>() {
@Override
public T get() {
return value;
}
};
}
我想使用lambda对其进行重构。我该怎么办?
答案 0 :(得分:2)
假设Provider
是具有如下抽象get()
方法的功能接口
@FunctionalInterface
interface Provider<T>{
abstract T get();
}
然后相应的lambda表达式为
Provider<String> p = ()->"hello";
System.out.println(p.get()); //hello