下面是個人學習記錄
1.添加配置
工程 build 添加如下:
classpath ‘me.tatarka:gradle-retrolambda:3.2.0’
Module 添加如下
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
2.MainActivity
public class MainActivity extends AppCompatActivity {
private Button button = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button = (Button)findViewById(R.id.testbtn);
button.setOnClickListener(v -> {
Log.e("MainActivity","lalalalalala") ;
});
}
}
3.轉化爲 lamda 形式
1.光標移動到要轉化的語句上 Alt+Enter
2.反之,光標在lamda語句上,Alt+Enter ,選擇 replace lambada with annoymous class
4.lamda語法
語法:()->{}
() 中變量爲參數,{}中未函數的邏輯代碼
(1)無參數的寫法
// 創建Runnable對象
Runnable runnable = () -> {
};
(2)含一個參數時,可以直接 參數名 -> {}
View.OnClickListener listener = view -> {
};
(3)含多個參數時,需要在()裏寫上參數名
View.OnFocusChangeListener listener = (view, b) -> {
};