参考:https://blog.csdn.net/linglongxin24/article/details/53888504
http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2016/0325/4078.html
1.配置Android studio
在module 的build.gradle中配置如下:
jackOptions{
enabled true
}
compileOptions{
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
2.使用
第一种方式,无参数+语句(代码块):适用于匿名内部类中方法无参数的情况
第二种方式,有参数+语句:适用于匿名内部类中方法只有一个参数的情况
第三种方式,有参数+代码块:适用于匿名内部类中方法不止一个参数的情况
什麼都不做
() -> {}单行不需要有返回值,单行可省略{}
(x, y) -> x + y;单行需要有返回值
(x, y) -> x + y//注意没有分号结尾- Observable.just("Hello", "RxJava")
- .map(new Func1<String, String>() {
- @Override
- public String call(String s) {
- return s.toUpperCase();
- }
- });
使用 lambda
- Observable.just("Hello", "RxJava")
- .map(s -> s.toUpperCase());
多行不需要有返回值
(x, y) ->{
x x;
y y;
}多行需要有返回值
(x, y) ->{
x x;
y y;
return x + y;
}