如何在Android Studio使用Java8 Lambda表达式

在Android Studio使用Java8 Lambda表达式

本博文简要概述如何在Android开发环境使用Lambda表达式,下面给出配置步骤

首先弄清以下两点

  • Lambda表达式是随着JDK1.8的出现而来的,自然就需要去下载和配置JDK1.8的环境变量
  • 在Android里是不能直接使用的,需要借助retrolambda,往这里过去吧~

什么是Lambda表达式

Lambda 表达式 是 Java8 中最重要的功能之一。使用 Lambda 表达式 可以替代只有一个函数的接口实现,告别匿名内部类,代码看起来更简洁易懂。Lambda 表达式 同时还提升了对 集合 框架的迭代、遍历、过滤数据的操作。

下面就开始贴出配置步骤吧~

第一步

如何在Android Studio使用Java8 Lambda表达式_第1张图片

配置JDK1.8的环境变量,如果没有就先去Oracle官网下载吧,这里只需要配置JDK1.8的JAVA_HOME就可以了,
之前配置的JDK1.7以下的仍然保留

第二步

可以去项目里进行配置的操作了。首先,找到项目的设置
如何在Android Studio使用Java8 Lambda表达式_第2张图片

在Project的SDK Location更为刚配置的JDK1.8的路径。
注:这里的修改,只是在编译时用的是JDK1.8,运行还是之前配置的JDK

第三步

在工程里配置retrolambda插件

如何在Android Studio使用Java8 Lambda表达式_第3张图片

在项目的Project gradle文件配置retrolambda插件的地址

如何在Android Studio使用Java8 Lambda表达式_第4张图片

接着在Module的gradle文件中按红线框的标注配置即可

普通表达式与Lambda的对比

感受下

 public void runnableTest() {
        System.out.println("=== RunnableTest ===");
        // 一个匿名的 Runnable
        Runnable r1 = new Runnable() {
            @Override
            public void run() {
                System.out.println("Hello world one!");
            }
        };

        // Lambda Runnable
        Runnable r2 = () -> System.out.println("Hello world two!");

        // 执行两个 run 函数
        r1.run();
        r2.run();
    }

注:对于使用Lambda表达式,代码的优雅性提高了,可代码的阅读性大大降低了,切记


你可能感兴趣的:(Android)