Android studio: выражения lambda не поддерживаются в -7 (используйте источник 8 или выше для включения лямбда-выражений)
С удовольствием узнаем, что java ввела Лямбда-выражения в java-версию 8.
Я работал в андроид-студии. И я заметил, что DialogInterface.OnClickListener()
показывал подчеркивание и стал серым цветом, как показано ниже:
![enter image description here]()
Итак, я сделал alter + enter
в этой строке и нашел вариант для замены кода на Lambda Expressions, как показано ниже:
![enter image description here]()
В результате получилось что-то ниже:
![enter image description here]()
После запуска кода он показал мне эту ошибку:
Ошибка: (160, 69) ошибка: лямбда-выражения не поддерживаются в-источнике 1.7 (для включения лямбда-выражений используйте источник 8 или выше)
Но я уже использую java jdk1.8.0_31
. Есть ли что-то еще, мне нужно установить?
Может кто-нибудь помочь мне, пожалуйста.
Ответы
Ответ 1
Вы не можете скомпилировать источники Java 8 для Android, потому что Android SDK еще не поддерживает Java 8.
Но есть один способ использования Lambdas в вашем коде - RetroLambda. Это небольшой взлом, который позволяет вам использовать некоторые функции Java 8 в вашем проекте.
Ответ 2
Я не думаю, что разработка Android
еще не готова для Java 8
. Android Studio
поддерживает уровень компиляции Java 7
, установлен ли Java 7
или Java 8
. Итак, если вы хотите использовать новые функции Java 8
, я думаю, вам нужно подождать Android Studio
для поддержки compile level Java 8
.