Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> 在Android中使用Java 8的lambda表達式

在Android中使用Java 8的lambda表達式

編輯:關於Android編程

 

在Android中使用Java 8的lambda表達式

作為一名Java開發者,或許你時常因為缺乏閉包而產生許多的困擾。幸運的是:Java’s 8th version introduced lambda functions給我們帶來了好消息;然而,這咩有什麼卵用,在android上面,我們仍舊只能使用Java7.

那麼現在情況如何?哈哈,我們android developer也能用啦!我們的老伙計Esko Luontola發現了在android上面使用lambda的方法,真是棒啊!那麼,我們來看看是怎麼實現的吧!

Just as there was Retroweaver et al. for running Java 5 code with generics on Java 1.4。Retrolambda允許我們能夠在Java 8或者更低的版本上使用lambda表達式。這真是太棒了:在Java 7的虛擬機中,我們能夠運行在8上編譯完成的代碼。

現在,我們使用Android Studio和gradle來實現吧,和Retrolambda簽訂契約,成為馬猴燒酒吧(霧!

Install JAVA 8 SDK

能搞起,前提是要使用Java 8的SDK,在這裡能夠下載:JAVA 8

好了,現在在android studio中設置使用java 8吧。

Mac:

File > Project structure. 需要將這樣設置:
set4javaSDK
別的可以參照設置。

Set up Gradle

你真棒呀!差不多你快好了。最後的步驟就是編輯Gradle的一些配置文件了。我們將會使用Retrolambda plugin from Evan Tatarka,這樣才能夠支持lambda表達式。

First、打開app模塊中的build.gradle文件,改變compileOption節點下的配置:

android {
    }
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
}

Second、在同樣的文件中添加:

buildscript {
    repositories {
        mavenCentral()
    }

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

repositories {
    mavenCentral()
}

apply plugin: 'me.tatarka.retrolambda'

然後就OK啦,嘗試build你的工程吧,肯定棒棒哒~

需要注意的是:Retrolambda僅僅允許你使用Java 8中的lambda表達式,其他的特性在android中是行不通的。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved