Kotlin 문법 사칙연산과 같은 기본 연산자
Kotlin 문법 사칙연산과 같은 기본 연산자
minOrNull() : 최소값을 반환한다.
- 예시
val numbers = listOf(5, 3, 8, 2, 10)
val minValue = numbers.minOrNull()
-> 2
minWithOrNull( compareBy{} ) : 최소값을 반환한다.
-
compareBy{}를 활용해서 특정 표현식에 따라 최소값을 반환한다.
-
예시
val numbers = listOf(5, 3, 8, 2, 10)
val minValue = numbers.minWithOrNull(compareBy { it })
-> 2
minByOrNull() : 최소값을 반환한다.
-
특정 표현식에 따라 최소값을 반환한다.
-
예시
val strings = listOf("apple", "banana", "cherry", "date")
val shortestString = strings.minByOrNull { it.length }
-> "apple"
maxOrNull() : 최대값을 반환한다.
- 예시
val numbers = listOf(5, 3, 8, 2, 10)
val maxValue = numbers.maxOrNull()
-> 10
average() : 평균값을 반환한다.
- 예시
val numbers = listOf(5, 3, 8, 2, 10)
val averageValue = numbers.average()
-> 5.6
sum() : 합계를 반환한다.
- 예시
val numbers = listOf(5, 3, 8, 2, 10)
val sum = numbers.sum()
-> 28
count() : 요소의 개수를 반환한다.
- count()는 컬렉션의 요소 개수를 반환한다.
- size를 사용하기도 한다.
-
length는 문자열의 길이를 반환한다.
- 예시
val numbers = listOf(5, 3, 8, 2, 10)
val count = numbers.count()
-> 5
// 짝수의 개수
val count = numbers.count { it % 2 == 0 }
-> 2
reduce{} : 요소를 누적시킨다.
- reduce{}는 매개변수는 람다식을 사용해서 첫번째는 누적된 값, 두번째는 현재 요소의 값을 받는다.
- 첫 요소가 없고 acc가 리스트의 첫번째 요소가 된고 두번째부터 시작한다.
-
fold{} 비교하자면, 첫 요소가 acc이고 두번째부터 시작이라고 생각하면 될 것 같다.
- 예시
val numbers = listOf(5, 3, 8, 2, 10)
val product = numbers.reduce { acc, value -> acc * value }
-> 2400
fold() {} : 초기값을 지정하여 요소를 누적시킨다.
-
fold{}는 매개변수는 람다식을 사용해서 첫번째는 누적된 값, 두번째는 현재 요소의 값을 받는다.
-
예시
val numbers = listOf(5, 3, 8, 2, 10)
val sum = numbers.fold(0) { acc, value -> acc + value }
-> 28
Math.abs() : 절대값을 반환한다.
- 예시
val number = -10
val absoluteValue = Math.abs(number)
-> 10
Math.pow() : 제곱값을 반환한다.
- 예시처럼 매개변수에 Double, Float 타입을 사용한다.
-
결과값으로 Double 타입으로 반환한다.
- 예시
val number = 5.0
val squaredValue = Math.pow(number, 2.0)
-> 25.0
댓글남기기