zoukankan      html  css  js  c++  java
  • android上的JAVA8:使用retrolambda

    android上的JAVA8:使用retrolambda

    Java8引入了lambda表达式,让许多开发者激动不已,本文介绍如何在Android上使用lambda。

    1. 首先下载 java8 sdk,并且配置完成
    2. build.gradle中加入编译的依赖,这会使用retrolambda来编译Java代码
    buildscript {
    //开始加入
     dependencies {
     classpath 'me.tatarka:gradle-retrolambda:3.1.0'
     }
     //结束插入
    }
    

    同时要加入plugin声明
    apply plugin: 'me.tatarka.retrolambda'

    3 . 加入compileOptions,这会让IDE使用用JAVA8语法解析

    compileOptions {
     sourceCompatibility JavaVersion.VERSION_1_8
     targetCompatibility JavaVersion.VERSION_1_8
    }
    

    4 . 指定将源码编译的级别,,使用下列代码,会将代码编译到兼容1.6的字节码格式

    retrolambda {
     javaVersion JavaVersion.VERSION_1_6
    }
    

    5 . 添加测试代码, 对于只有一个方法的接口,java8中可以使用lambda表达式代替,所以我们熟悉的设定View点击事件的代码,只要这样写就可以了

    v.setOnClickListener(v1 -> Toast.makeText(getActivity(), "clicked", Toast.LENGTH_LONG).show());
    

    对比一下之前的代码量,是不是爽爆了?!!

    v.setOnClickListener(new View.OnClickListener(View v) {
     @Override
     public void onClick(View v) {
     Toast.makeText(getActivity(), "clicked", Toast.LENGTH_LONG).show()
     }
    });
    

    所有代码可以在这里找到:

    http://tinyurl.com/qdbae7d

    原文地址:juude.net/lambdajava

  • 相关阅读:
    LinQ&EF任我行(一)LinQ to SQL (转)
    WPF数据模板和控件模板
    Sql优化
    SQL锁表语句
    js动态创建dom
    js实现等待n秒后按钮可用
    js关于事件冒泡
    工作流学习(个人总结)
    sql常用函数
    将Datatable序列化为Json对象返回到客户端
  • 原文地址:https://www.cnblogs.com/qingchen1984/p/5019496.html
Copyright © 2011-2022 走看看