在AndroidStudio中设置某项目支持使用Java 8 新特性


 在AndroidStudio中设置某项目支持使用Java 8 新特性
( eg:Lambda 表达式)


文 | 莫若吻     


注:如果你是个心急的同学,那就直接看本文的第3点吧——“快捷设置项目支持使用java8的方式”。)


1.情景描述

在AndroidStudio中新建一个项目,以设置支持Lambda表达式为例,写一段Lambda表达式代码。如图:

(注:以下截图中的项目代码,并没有实际运行意义,只是为了说明如何设置、使用支持Java 8的Lambda表达式。)

创建项目:


附上一段可以变形为Lambda表达式的代码



如果直接写出Lambda表达式会提示错误,如图:




2.手动设置支持使用Java8新特性

设置支持使用java8新特性有一个大前提就是,计算机中已安装java8 JDK软件并配置好了相关的环境变量。

为了使AndroidStudio中的上述项目支持使用java8新特性:Lambda表达式等,设置步骤如图:

先找到设置入口,有三种途径:

1)File -----> Project Structrue……


2)选中项目,鼠标右键……



3)这是最快捷的设置入口。



下面正式开始设置步骤,如图:

(第四步是设置资源代码和目标兼容性所支持的java版本,选择下拉菜单中若没有java8版本,就暂时选择最高版本1.7,具体请看图)



(第七步是找到项目对应的build.gradle文件,在图中中间的红框位置,手动设置两项--资源代码和目标兼容性,所支持的java版本,更改为Java8版本,具体修改代码如下。最后再同步一下项目就ok了

compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
位置如图:



到此时还没结束,同步代码后有可能出现bug


需要在build.gradle文件中加如下代码,然后同步,ok。

defaultConfig {
			...
			jackOptions {
				enabled true
			}
		}

注:上面只是手动设置支持java8的方式,便于理解。若觉得麻烦,请别着急,继续往下看哦!)


3.快捷设置项目支持使用java8的方式:

前提:计算机中已安装java8 JDK软件并配置好了相关的环境变量。

在项目的build.gradle文件中加如下代码,并同步即可。(注:这里才是本文最核心的部分)

android {  
  ...  
  compileOptions {  
    sourceCompatibility JavaVersion.VERSION_1_8  
    targetCompatibility JavaVersion.VERSION_1_8  
  }  
  
  defaultConfig {  
    ...  
    jackOptions {  
      enabled true  
    }  
  }  
  ...  
}  


4.如何在项目中使用Lambda表达式

先试试代码效果:

是将原有代码转换成lambda表达式形式


转换后:



4.快捷设置支持使用Lambda表达式

上面的方式比较繁琐,是为了让大家清楚如何设置支持使用java8 新特性。

如果只是为了设置支持使用Lambda表达式,那非常简单,如图:

首先先在项目中写一段Lambda表达式,肯定会报错,然后将鼠标放在报错的位置,按快捷键Alt+Enter,会出现提示,然后按图中的显示的位置点击对应操作就Ok了。


注:再偷偷教你一招,如果在项目中有看不懂Lambda表达式的表现形式,可以将鼠标放在Lambda表达式位置,然后按快捷键Alt+Enter,会出现如上面图的提示,然后选择倒数第二个的那串英文,Lambda表达式换回原来的匿名类形式。



  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值