Android 에서 Lambda 표현 식 사용 실례 상세 설명
자바 8 에 서 는 Lambda 표현 식,streamAPI,인터페이스 기본 구현 등 매우 특색 있 는 기능 을 도입 했다.Lambda 표현 식 은 Android 에서 Android 2.3 시스템 에 최소 호 환 되 며 호환성 이 좋 습 니 다.Lambda 표현 식 은 본질 적 으로 익명 의 방법 입 니 다.방법 이름 도 없고 수정자 와 반환 값 형식 에 접근 하지 않 았 습 니 다.작 성 된 코드 를 사용 하면 더욱 간결 하고 읽 기 쉽 습 니 다.
1.Lambda 표현 식 의 기본 표기 법
Android 프로젝트 에서 Lambda 표현 식 이나 자바 8 의 다른 새로운 기능 을 사용 하려 면 먼저 자바 8 버 전의 JDK 를 설치 한 다음 app/build.gradle 에 다음 설정 을 추가 해 야 합 니 다.
android {
...
defaultConfig {
jackOptions.enabled = true
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
이후 Lambda 표현 식 을 사용 할 수 있 습 니 다:예 를 들 어 Lambda 표현 식 을 사용 하여 하위 스 레 드 를 여 는 방법 은 다음 과 같 습 니 다.
//
new Thread(new Runnable() {
@Override
public void run() {
//
}
}).start();
// Lambda
new Thread(() -> {
//
}).start();
코드 줄 수 나 들 여 쓰기 구조 상 람 다 표현 식 의 쓰기 가 더욱 간단 합 니 다.왜 이렇게 써 도 되 지?Runnable 인터페이스의 원본 코드 를 살 펴 보 겠 습 니 다.
public interface Runnable {
void run();
}
실현 되 어야 할 방법 이 하나 밖 에 없 는 인터페이스 라면 람 다 표현 식 의 쓰기 도 사용 할 수 있다.2.인 터 페 이 스 를 사용자 정의 한 다음 Lambda 표현 식 사용
MyListener 인 터 페 이 스 를 새로 만 듭 니 다.인터페이스 에 실현 해 야 할 방법 은 하나 뿐 입 니 다.앞의 유일한 것 과 는 인자 와 반환 값 이 있 습 니 다.
public interface MyListener {
String run(String str1, String str2);
}
그러면 Lambda 표현 식 을 사용 하여 MyListener 인 터 페 이 스 를 만 드 는 익명 구현 방법 은 다음 과 같 습 니 다.
MyListener listener = (String str1, String str2) -> {
String result = str1 + str2;
return result;
};
또한 자바 는 상하 문 을 통 해 람 다 표현 식 의 매개 변수 유형 을 자동 으로 추정 할 수 있 기 때문에 더욱 간소화 할 수 있다.
MyListener listener = (str1, str2) -> {
String result = str1 + str2;
return result;
};
3.Android 에서 Lambda 표현 식 사용Android 에서 이 벤트 를 누 르 면 Lambda 표현 식 을 사용 합 니 다.
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
//
}
});
Lambda 표현 식 사용 후:
button.setOnClickListener((v) -> {
//
});
또한 인터페이스 에 매개 변수 가 하나 밖 에 없 을 때 우 리 는 매개 변수 밖의 괄호 를 제거 할 수 있다.
button.setOnClickListener(v -> {
//
});
읽 어 주 셔 서 감사합니다. 여러분 에 게 도움 이 되 기 를 바 랍 니 다.본 사이트 에 대한 여러분 의 지지 에 감 사 드 립 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Bitrise에서 배포 어플리케이션 설정 테스트하기이 글은 Bitrise 광고 달력의 23일째 글입니다. 자체 또는 당사 등에서 Bitrise 구축 서비스를 사용합니다. 그나저나 며칠 전 Bitrise User Group Meetup #3에서 아래 슬라이드를 발표했...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.