Kotlin Set sumBy()
Syntax & Examples
Set.sumBy() extension function
The sumBy() extension function in Kotlin returns the sum of all values produced by the selector function applied to each element in the collection.
Syntax of Set.sumBy()
The syntax of Set.sumBy() extension function is:
fun <T> Set<T>.sumBy(selector: (T) -> Int): Int
This sumBy() extension function of Set returns the sum of all values produced by selector function applied to each element in the collection.
Parameters
Parameter | Optional/Required | Description |
---|---|---|
selector | required | A function that takes an element and returns the value to be summed. |
Return Type
Set.sumBy() returns value of type Int
.
✐ Examples
1 Summing the lengths of strings in a set
Using sumBy() to sum the lengths of strings in a set.
For example,
- Create a set of strings.
- Use sumBy() with a selector function that returns the length of each string.
- Print the resulting sum.
Kotlin Program
fun main() {
val strings = setOf("one", "two", "three")
val sum = strings.sumBy { it.length }
println(sum)
}
Output
11
2 Summing the ages of people in a set of custom objects
Using sumBy() to sum the ages of people in a set of custom objects.
For example,
- Create a data class.
- Create a set of custom objects.
- Use sumBy() with a selector function that returns the age of each person.
- Print the resulting sum.
Kotlin Program
data class Person(val name: String, val age: Int)
fun main() {
val people = setOf(Person("Alice", 30), Person("Bob", 25), Person("Charlie", 35))
val sum = people.sumBy { it.age }
println(sum)
}
Output
90
3 Summing the squares of numbers in a set of integers
Using sumBy() to sum the squares of numbers in a set of integers.
For example,
- Create a set of integers.
- Use sumBy() with a selector function that returns the square of each number.
- Print the resulting sum.
Kotlin Program
fun main() {
val numbers = setOf(1, 2, 3, 4)
val sum = numbers.sumBy { it * it }
println(sum)
}
Output
30
Summary
In this Kotlin tutorial, we learned about sumBy() extension function of Set: the syntax and few working examples with output and detailed explanation for each example.