Wie Lambda-Ausdrücke in Android verwenden? Zum Beispiel habe ich diesen Code in IntelliJ IDEA kompilieren:Lambda-Ausdrücke in android
package com.example.myapp;
import android.app.Activity;
import android.app.AlertDialog;
import android.os.Bundle;
public class MyActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
test s =() -> {return "Lambda expressions test";};
AlertDialog alertDialog = new AlertDialog.Builder(this)
.setTitle("Lambda expression")
.setMessage(s.t())
.create();
alertDialog.show();
}
}
interface test {
public String t();
}
Aber haben diese erorrs:
Information:Using javac 1.8.0_05 to compile java sources
Information:36 errors
Information:0 warnings
Information:Compilation completed with 36 errors and 0 warnings in 29 sec
Error:Android Dex: [myappі] UNEXPECTED TOP-LEVEL EXCEPTION:
Error:Android Dex: [myappі] com.android.dx.cf.iface.ParseException: InvokeDynamic not supported
Wie so einrichten, können Sie Lambda-Ausdrücke verwenden?
android Java unterstützt 6/7 nicht 8 ich denke. Lambda wird in Java eingeführt 8 ich denke, – Raghunandan
ja, Lambda wird in Java 8 eingeführt, aber was kann ich tun, wenn es bereits eine Menge Code mit einem Lambda-Ausdruck geschrieben wird – user3430722
@Raghunandan Sie liegen falsch. Lambdas funktionieren problemlos in Android Studio, wenn Sie build.gradle auf Java 8 eingestellt haben. –