Kotlin/포스팅

코틀린 호출과 인덱스로 원소 찾기

짜집퍼박사(짜박) 2024. 1. 4. 23:23

코틀린에서는 함수 호출과 인덱스를 사용하여 컬렉션의 원소를 찾거나 다루는 다양한 방법을 제공합니다.

 

1. 함수 호출로 원소 찾기

- find 함수

find 함수를 사용하여 조건에 맞는 첫 번째 원소를 찾을 수 있습니다. 조건에 맞는 원소가 없을 경우 null을 반환합니다.

val numbers = listOf(1, 2, 3, 4, 5)
val result = numbers.find { it > 3 }

println(result) // 출력: 4

- first 및 last 함수

first와 last 함수를 사용하여 조건에 맞는 첫 번째 또는 마지막 원소를 찾을 수 있습니다. 조건에 맞는 원소가 없을 경우 NoSuchElementException이 발생할 수 있습니다.

val numbers = listOf(1, 2, 3, 4, 5)
val firstResult = numbers.first { it > 3 }
val lastResult = numbers.last { it > 3 }

println(firstResult) // 출력: 4
println(lastResult)  // 출력: 5

- filter 함수

filter 함수를 사용하여 조건에 맞는 모든 원소를 찾을 수 있습니다.

val numbers = listOf(1, 2, 3, 4, 5)
val filteredResults = numbers.filter { it % 2 == 0 }

println(filteredResults) // 출력: [2, 4]

 

2. 인덱스로 원소 찾기

코틀린에서는 리스트의 인덱스를 사용하여 특정 위치에 있는 원소를 찾을 수 있습니다.

val numbers = listOf(10, 20, 30, 40, 50)

// 인덱스로 원소 찾기
val elementAtIndex = numbers[2]
println(elementAtIndex) // 출력: 30

 

3. getOrElse 함수로 기본값 설정

getOrElse 함수를 사용하여 인덱스로 원소를 찾을 때 인덱스가 범위를 벗어나는 경우 기본값을 반환할 수 있습니다.

val numbers = listOf(10, 20, 30, 40, 50)

// 인덱스로 원소 찾기, 인덱스가 범위를 벗어나면 기본값 사용
val element = numbers.getOrElse(10) { -1 }
println(element) // 출력: -1

 

4. getOrNull 함수로 널 대신 기본값 반환

getOrNull 함수를 사용하여 인덱스로 원소를 찾을 때 인덱스가 범위를 벗어나는 경우 null 대신 기본값을 반환할 수 있습니다.

val numbers = listOf(10, 20, 30, 40, 50)

// 인덱스로 원소 찾기, 인덱스가 범위를 벗어나면 null 반환
val element = numbers.getOrNull(10) ?: -1
println(element) // 출력: -1

위의 방법들을 통해 함수 호출이나 인덱스를 사용하여 컬렉션에서 원소를 찾고, 필요에 따라 기본값을 설정하거나 예외를 처리할 수 있습니다. 선택한 방법은 상황에 따라 다를 수 있으며, 코드의 안전성과 가독성을 고려하여 선택하는 것이 중요합니다.

 

With ChatGPT

'Kotlin > 포스팅' 카테고리의 다른 글

코틀린 이터레이션  (0) 2024.01.05
코틀린 구조 분해  (0) 2024.01.04
코틀린 대입  (0) 2024.01.04
코틀린 중위 연산  (0) 2024.01.03
코틀린 이항 연산  (0) 2024.01.03