AndroidStudio下使用Lambda表达式

本文介绍在AndroidStudio中使用Lambda表达式的两种方法:通过Google官方支持的Jack工具链和使用retrolambda插件。介绍了如何在build.gradle文件中配置以启用Java8特性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

AndroidStudio下使用Lambda

Lambda在Java8得到支持,那么在开发Android项目时如何设置支持Lamdba表达式呢?

Google官方方式

使用Java8时,需要新的Jack工具链

  • javac工具链:
javac (.java --> .class) --> dx(.class --> .dex)
  • Jack工具链:
Jack (.java --> .jack  --> .dex)

设置支持Java8

在Module级别的build.gradle中添加相关项

android {
  ...
  defaultConfig {
    ...
    //添加jack支持
    jackOptions {
      enabled true
    }
  }
  //设置使用Java8
  compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
  }
}

使用retrolambda插件

1.在项目级别的build.gradle中添加retrolambda支持

buildscript {
  repositories {
     mavenCentral()
  }

  dependencies {
     classpath 'me.tatarka:gradle-retrolambda:3.2.5'
  }
}

// Required because retrolambda is on maven central
repositories {
  mavenCentral()
}

2.在module级别的build.gradle中添加retrolambda插件,并且声明支持Java8

apply plugin: 'com.android.application'
//需要添加的retrolambda支持插件
apply plugin: 'me.tatarka.retrolambda'

android {
    ...
    defaultConfig {
    ...
         }

    //注意 此处未开启Jack方式
    //需要添加的Java8支持
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
    ...
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值