본문 바로가기
Kotlin

[깡샘의 코틀린 프로그래밍] 정리 14 - forEach()

by 들풀민들레 2018. 3. 2.

본 글은 [깡샘의 코틀린 프로그래밍 - 루비페이퍼] 의 내용을 발췌한 것입니다.

좀더 자세한 내용은 책을 통해 확인해 주세요.

 

 

 

14장. 컬렉션 타입과 람다

 

14.1.1. forEach( ), forEachIndexed( )

 

컬렉션 타입의 데이터를 이용할 때 forEach ( ) 함수도 자주 이용합니다. forEach ( ) 함수는 단순히 컬렉션 타입의 데이터 개수만큼 특정 구문을 반복 실행할 때 유용합니다

 

01 val resultList2 = list2.filter { it > 10 }

02 for(i in resultList2){

03   println(i)

04 }

 

filter ( ) 함수로 데이터를 필터링하고 필터링 된 데이터를 로그로 출력하는 코드입니다. for 문에 조건을 주어 직접 이용하였는데 이 부분을 forEach ( ) 함수를 이용하면 조금 더 쉽게 작성할 수 있습니다

 

01 list2.filter { it > 10 }

02     .forEach { println(it) }

 

filter ( ) 함수로 추출된 데이터가 2개라면 forEach ( ) 함수가 두 번 호출되며 호출 때마다 데이터를 차례로 forEach ( ) 함수의 매개변수로 지정된 { }에 전달해 줍니다.

 

forEachIndexed( ) 함수는 forEach ( ) 함수와 동일하며 단지 람다 함수에 인덱스값까지 전달해 줍니다.

 

01 listOf(1, 2, 3).forEachIndexed { index, value ->

02     println("index : $index, value : $value") }

 

【 실행결과 】

index : 0, value : 1

index : 1, value : 2

index : 2, value : 3