我目前正在使用一个库,它使用lambda表达式来获取颜色。我试着研究lambda,但我似乎无法理解它,或者如何调整代码。
我使用的图书馆名为Aesthetic,这是代码:
Aesthetic.get()
.colorPrimary()
.take(1)
.subscribe(color -> {
System.out.println("The color is " + color);
});
如何在不使用->
的情况下获取颜色,因为我不想在项目中使用Java 1.8。
答案 0 :(得分:3)
subscribe
方法需要Consumer<Integer>
。 lambda基本上代表了它的一个实例。因此,您只需要创建Consumer<Integer>
的实例。您可以使用匿名类来执行此操作:
.subscribe(new Consumer<Integer>() {
@Override
public void accept(Integer color) {
System.out.println("The color is " + color);
}
});