Android Studio 配置 JDK1.8 使用Lambda表达式
来源:互联网 发布:restful 接口实例java 编辑:程序博客网 时间:2024/06/16 18:17
Android Studio 配置 JDK1.8 使用Lambda表达式
JDK1.8 添加几项新特性譬如对集合的优化语法的便捷配合Lambda表达式使用可以让代码更加简便美观,但对于一些没有接触Lambda表达式的同学们来说就难于理解代码里的意向和调试。因为Android SDK目前还没有支持JDK1.8 所以有些新特性都是用不上
案例1:
List<String> names = Arrays.asList("FX", "Zing", "Hk"); Collections.sort(names, new Comparator<String>() { @Override public int compare(String a, String b) { return b.compareTo(a); } }); //forEach这个方法也是JDK1.8里有的,后面就Lambda表达式 ->左边是参数,->右边是执行方法体。 names.forEach(name->System.out.println(name)); //注意 因为Android SDK还没有支持JDK1.8 所以没有forEach这个方法。但可以使用Lambda表达式。那是因为我们通过RetroLambda插件将Java8中的代码编译产生的字节码转换成Java7字节码。
现在我们把Android Studio 的SDK 换成JDK8
1.打开 File->Setings 搜索closure 把它钩上。
2.打开 Project Structure 快捷键:Ctrl+Shift+alt+s
3.选择SDK location 配置JDK1.8
4.点击Modules 里面的项目,都选择1.8如果下拉没有,就直接输入1.8
好的现在我们的环境都已经配置好,重新运行下项目发现报错了
Java\jdk1.8.0_65\bin\java.exe” finished with non-zero exit value 1
然后就上百度Google各种搜发现说要加大JAVA运行内存,都得不到解决。
把这些代码放在你项目的build里试试,重新Gradle 项目,但是构建是会有点慢是因为这个插件是用Maven下载下来的。
buildscript { repositories { mavenCentral() } dependencies { classpath 'me.tatarka:gradle-retrolambda:3.2.4' }}// Required because retrolambda is on maven centralrepositories { mavenCentral()}apply plugin: 'com.android.application' //or apply plugin: 'java'apply plugin: 'me.tatarka.retrolambda'
好了,现在基本都可以正常了,如果有错尝试把CLASSPATH配置上
具体可以参考:https://github.com/evant/gradle-retrolambda
如果是Eclipse 直接在Eclipse MarketPlace 搜索Java 8 安装下面插件。
0 0
- Android Studio 配置 JDK1.8 使用Lambda表达式
- Android Studio lambda表达式使用配置
- jdk1.8新特性之Lambda表达式及在Android Studio中的使用
- lambda:在android studio中的配置和使用lambda表达式
- Android 使用jdk1.8新特性之lambda表达式
- Android studio使用lambda表达式
- Android Studio 使用Lambda表达式
- Android Studio 使用 Lambda表达式
- Android Studio使用Lambda表达式
- android studio 使用lambda表达式
- Android Studio使用lambda表达式
- Android studio使用Lambda表达式
- Android Studio 使用Lambda表达式
- Android Studio上gradle配置Lambda表达式
- Android Studio 配置lambda表达式和rxjava
- Android Studio配置Dagger2+java8+lambda表达式
- android studio 配置Java8支持Lambda表达式
- Android Studio使用 Lambda表达式使用出错
- 数组 选择法排序
- java在linux上创建文件/文件夹
- TR4—TR6阶段测试项目管理
- RTAI 例子
- python中if __name__ == '__main__': 的解析
- Android Studio 配置 JDK1.8 使用Lambda表达式
- Oracle中dual虚拟表
- <LeetCode OJ> 27. Remove Element
- android studio中如何设置注释模板
- C语言指针-----指针与文件
- Oracle中的事务
- Codeforces 607A Chain Reaction 【二分 + dp】
- Ubuntu 15.10创建桌面快捷方式、启动器
- Intersection of Two Linked Lists 判断两个单链表里边有没有重叠,返回重叠的第一个节点