Собственная Java 8 прибывает на Android! Наконец,
удалите плагин Retrolambda и блок retrolambda из файла build.gradle каждого модуля:
Чтобы отключить Jack и переключиться на инструментальную цепочку по умолчанию, просто удалите блок jackOptions из файл build.gradle вашего модуля
blockquote>Чтобы начать использовать поддерживаемые функции языка Java 8, обновите плагин Android до 3.0.0 (или выше)
Начиная с Android Studio 3.0 , Функции языка Java 8 теперь поддерживаются андроидом:
- Лямбда-выражения
- Ссылки на методы
- Аннотации типов (в настоящее время информация о аннотации типа недоступна во время выполнения, но только во время компиляции);
- Повторение аннотаций
- Методы по умолчанию и статические интерфейсы (на уровне API 24 или выше, без поддержки мгновенного запуска tho);
Также из минимального уровня API 24 доступны следующие Java 8 API:
- java.util.stream
- java.util.function
- java.lang.FunctionalInterface
- java.lang.annotation.Repeatable
- java.lang.reflect.AnnotatedElement.getAnnotationsByType (класс)
- java.lang.reflect.Method.isDefault ()
Добавьте эти строки в build.gradle вашего модуля приложения, чтобы проинформировать проект уровня языка:
android { compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 }
Отключить поддержку Java Language Language Features, добавив следующее к вашему Файл gradle.properties:
android.enableDesugar=false
Все готово! Теперь вы можете использовать собственный java8!
new ArrayList(input.subList(0, input.size()/2))
– Stephen C 25 August 2014 в 23:33