前言:
Lambda 表达式,也可称为闭包,它是推动 Java 8 发布的最重要新特性。
Lambda 允许把函数作为一个方法的参数(函数作为参数传递进方法中)。
使用 Lambda 表达式可以使代码变的更加简洁紧凑。
配置:
1、安装java 8,并在android studio中配置使用;

2、app build.gradle中配置
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
3、解决用JDK1.8 Lambda表达式中文乱码的问题
gradle.properties文件中配置
org.gradle.jvmargs=-Dfile.encoding=UTF-8
使用:
demo:
//普通写法
adapter.setItemClickListener(new SelectAdapter.ItemClickListener() {
@Override
public void onClick(int position) {
Select select = list.get(position);
startActivity(new Intent(SelectActivity.this, select.getActivity().getClass()));
}
});
//使用Lambda表达式
adapter.setItemClickListener(position -> {
Select select = list.get(position);
startActivity(new Intent(SelectActivity.this, select.getActivity().getClass()));
});
//普通写法
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Intent intent = new Intent(MainActivity.this, SelectActivity.class);
intent.putExtra("type", position + 1);
startActivity(intent);
}
});
//使用Lambda表达式
listView.setOnItemClickListener((parent, view, position, id) -> {
Intent intent = new Intent(MainActivity.this, SelectActivity.class);
intent.putExtra("type", position + 1);
startActivity(intent);
});
Java8 Lambda表达式简化代码实战指南
本文详细介绍了如何在Android环境中配置和使用Java8的Lambda表达式,通过实例展示了Lambda如何替代传统匿名内部类,使代码变得更加简洁。从安装Java8到配置Android Studio,再到解决乱码问题,每一步都提供了清晰的指导。同时,文章通过对比普通写法与Lambda表达式的用法,突显了Lambda在事件监听和点击回调中的高效应用。
300

被折叠的 条评论
为什么被折叠?



