Kotlin 배열(Array)에서 최소값, 최대값 찾기
배열의 요소들 중에서 최소값, 최대값을 찾는 방법에 대해서 소개한다.
minOrNull(), minOrNull()를 이용한 방법
Array
에서 제공하는 minOrNull()
, maxOrNull()
함수는 배열의 최소값, 최대값을 반환한다.
fun main() {
val array = arrayOf(66, 10, 34, 70, 42)
println("min: ${array.minOrNull()}")
println("max: ${array.maxOrNull()}")
}
Output:
min: 10
max: 70
Tip
기존에Array
에서 제공하는 min()
, max()
함수는 1.4 버전 이후로 deprecated 되었다.
정렬을 이용한 방법
Array.sorted()
함수는 오름차순으로 정렬된 배열을 반환한다.
오름차순으로 정렬되었기 때문에, Index의 첫번째 요소는 최소값이 되고, 마지막 요소는 최대값이 된다.
fun main() {
val array = arrayOf(66, 10, 34, 70, 42)
val sortedArray = array.sorted()
println("min: ${sortedArray.first()}")
println("max: ${sortedArray.last()}")
}
Output:
min: 10
max: 70
반복문을 이용한 방법
for문으로 배열의 모든 요소를 반복하면서, 최소값과 최대값을 찾을 수도 있다.
아래와 같이 min
변수의 초기 값을 Int
의 최대값, max
변수의 초기 값을 Int
의 최소값으로 할당하고 for문으로 반복하면서 값을 찾는다.
fun main() {
val array = arrayOf(66, 10, 34, 70, 42)
var max = Int.MIN_VALUE
var min = Int.MAX_VALUE
for (i in array) {
min = if (min > i) i else min
max = if (max < i) i else max
}
println("min: $min")
println("max: $max")
}
Output:
min: 10
max: 70
최종 수정 : 2024-09-14