리스트의 모든 요소들 중에서 최대 값, 최소 값을 찾는 방법을 소개합니다.
1. min(), max()를 이용한 방법
list의 min()
, max()
메소드는 리스트의 요소들 중에 최소, 최대 값을 리턴합니다.
하지만 min()
, max()
는 deprecated 되었고, 동일한 동작을 하는 minOrNull()
또는 maxOrNull()
을 사용하는 것이 좋습니다.
fun main() {
val list = listOf(10, 33, 21, 55, 24)
println("min: ${list.minOrNull()}")
println("max: ${list.maxOrNull()}")
}
Output:
min: 10
max: 55
2. 정렬을 이용한 방법
list.sorted()
는 오름차순으로 정렬된 리스트을 리턴합니다.
오름차순으로 정렬된 리스트에서 Index 0의 요소는 최소 값, 마지막 Index 요소는 최대 값이 됩니다.
fun main() {
val list = listOf(10, 33, 21, 55, 24)
val sortedList = list.sorted()
println("min: ${sortedList.first()}")
println("max: ${sortedList.last()}")
}
Output:
min: 10
max: 55
3. for loop를 이용한 방법
for문으로 모든 요소를 순회하면서 직접 최소 값과 최대 값을 찾을 수 있습니다.
fun main() {
val list = listOf(10, 33, 21, 55, 24)
var max = Int.MIN_VALUE
var min = Int.MAX_VALUE
for (i in list) {
min = if (min > i) i else min
max = if (max < i) i else max
}
println("min: $min")
println("max: $max")
}
Output:
min: 10
max: 55
Loading script...
Related Posts
- Kotlin - 배열에서 최소 값, 최대 값 찾기
- Kotlin - 2차원 배열 선언, 초기화 방법
- Kotlin - 배열 선언, 초기화 방법
- Kotlin - 리스트, 배열 길이 가져오기
- Kotlin - 리스트에서 최대, 최소 값 찾기
- Kotlin - for 반복문, 배열/리스트 순회
- Kotlin - Timer, 주기적으로 함수 실행
- Kotlin - sleep, 쓰레드 몇 초 지연
- Kotlin - Thread 생성 및 실행
- Kotlin에서 정규표현식 사용하기
- Kotlin - 문자열 길이 계산
- Kotlin - 문자열 비교 방법(equals, ==, compareTo)
- Kotlin - 2개의 배열 하나로 합치기
- Kotlin - 2개의 List 하나로 합치기
- Kotlin - 디렉토리의 모든 파일 리스트 출력
- Kotlin - 리스트 정렬 방법 (sort, sortBy, sortWith)
- Kotlin - 문자열 뒤집기 (Reverse String)
- Kotlin - 랜덤 숫자 생성 (Random, SecureRandom)
- Kotlin - Range, 숫자 범위 표현
- Kotlin - 음수를 양수로 변환, math.abs()
- Kotlin - List를 Set로 변환
- Kotlin - Set를 List로 변환
- Kotlin - 문자열에서 숫자(int)만 추출하는 방법
- Kotlin - Map을 List로 변환하는 방법
- Kotlin - File, Directory가 존재하는지 확인
- Kotlin - List를 Map으로 변환
- Kotlin - List의 중복 요소 제거
- Kotlin - List를 Array로 변환
- Kotlin - 엘비스 연산자 (Elvis Operation)
- Kotlin - Array를 List로 변환
- Kotlin - String을 Float으로 변환
- Kotlin - String을 Double으로 변환
- Kotlin - String을 Int로 변환
- Kotlin - String을 Long으로 변환
- Kotlin - String Null 또는 Empty 체크