Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 |
Tags
- Room 데이터베이스 업데이트
- 안드로이드 비콘
- bluetoothmanager
- 라이브데이터 postValue
- 비콘스캐닝
- 커스텀스피너
- 안드로이드스튜디오 jdk
- 안드로이드 sms
- apk이름변경
- 모의위치 주입
- 코틀린 이미지저장 #파일저장
- 상태바 가려짐현상 #소프트키 가려짐
- 코틀린 트리거 버튼
- TwomonUSB
- 안드로이드 mvvm
- 스레드 #코루틴
- 토글 험수
- 1회용 플라스틱컵
- TowmonUSB 연결오류
- #큐구조 #큐다운로드
- var 와 val
- withContext
- compse state
- compse collectAsState
- 셀룰로오스-g-폴리락타이드 공중합체
- 안드로이드스튜디오 다운
- 코루틴 job
- 안드로이드 스튜디오 애뮬레이터
- viewmodelscope
- 구버전 안드로이드 스튜디오
Archives
- Today
- Total
EnjoyLife
함수의 마지막 인자로 람다를 쓰는 이유 본문
동일한 결과가 나오지만 함수의 마지막 인자로 람다식을 적용한 코드가 더 간결함을 느낄수 있다.
람다코드의 매력은 함수의 마지막 인자가 람다식이면 중괄호{ } 로 표현하게 돼 소스가 간결해진다.
반환형이 Unit 으로 한 이유는 함수를 호출하기 위함이다.
반환값이 있으면 이방법을 쓸 이유가 없다.
일반코드
fun printNumbers(numbers: List<Int>) {
for (number in numbers) {
println(number)
}
}
fun main() {
val numbers = listOf(1, 2, 3)
printNumbers(numbers)
}
람다코드
fun printNumbers(numbers: List<Int>, action: (Int) -> Unit) {
for (number in numbers) {
action(number)
}
}
fun main() {
val numbers = listOf(1, 2, 3)
printNumbers(numbers) { number ->
println(number)
}
}
출력코드:
1
2
3
우린 알게 모르게 쓰고 있었다. 이 함수또한 마지막 인자가 (Int)->Unit 인 람다식이다.
findViewById<Button>(R.id.button).setOnClickListener {
showToast("버튼이 클릭되었습니다.")
}'안드로이드 개발 > 개발팁' 카테고리의 다른 글
| json 을 파일에 저장후 읽어오는 방법 (0) | 2023.12.13 |
|---|---|
| Room 데이터베이스 업데이트 (0) | 2023.12.11 |
| 안드로이드스튜디오 애뮬레이터 죽어도 실행안될때 (2) | 2023.10.30 |
| 루팅단말기일 경우 실행 차단 (0) | 2023.10.30 |
| MediaBrowserService 와 MediaSessionCompat 을 이용해서 exoplayer 만들기 (0) | 2023.10.26 |