Lambda优雅开发android
16lz
2021-12-04
Lambda表达式的语法
基本语法:
(parameters) -> expression
或
(parameters) ->{ statements; }
Lambda表达式是在JDK 8中开始支持的一种函数式推导语言,能够大量减少匿名内部类那种冗余的代码。在Android中,可以大量使用在设置监听,设置异步回调等场景。
平时用androidstudio开发android,确实写回调的时候,匿名的内部类写的代码读起来不直观!
retrolambda插件解决了这个问题
1.Project 的顶层 gradle文件配置classpath
buildscript { ... dependencies { ... classpath 'me.tatarka:gradle-retrolambda:3.1.0' }}
2.Module的gradle文件配置
加入声明
apply plugin: 'me.tatarka.retrolambda'
在android{ ... }里加入
compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 }
看看写匿名类的时候
看到那波浪线的提示没有,匿名程式new Func1 ()能够用lambda代替,不会也没关系Alt+Enter
然后简化之后的
简化前5行,简化后一行,对比就出来了!
一个参数 ,一个表达式,很爽!
再看看
启动一个线程:new Thread(() -> System.out.println("Hello RxJava !")).start();排序:String[] expression = {"abc", "bcd", "dbe"};Arrays.sort(expression, (String s1, String s2) -> (s1.compareTo(s2)));
更多相关文章
- Python技巧匿名函数、回调函数和高阶函数
- 避免内存泄露
- Android(安卓)studio的常见布局
- android Handler and progress
- 《Android(安卓)计算器》
- android之sax解析xml文件 .
- Android(安卓)基于GeolocationAPI的基站定位
- 从AsyTask函数式封装到lambda表达式
- ViewCompat:android官方实现兼容的一个帮助类