Add Multiple Elements to HashSet in Kotlin | Kotlin HashSet addAll Function

The addAll function in Kotlin is used to add multiple elements to a HashSet from a specified collection. This function is part of the Kotlin standard library and provides a convenient way to insert multiple elements into a set in one operation.

Table of Contents

  1. Introduction
  2. addAll Function Syntax
  3. Understanding addAll
  4. Examples
    • Basic Usage
    • Adding Elements from Another Collection
  5. Real-World Use Case
  6. Conclusion

Introduction

The addAll function allows you to insert all elements from a specified collection into a HashSet. If some elements are already present in the set, they will not be added again, ensuring that the set contains only unique elements.

addAll Function Syntax

The syntax for the addAll function is as follows:

fun addAll(elements: Collection<E>): Boolean

Parameters:

  • elements: The collection of elements to be added to the set.

Returns:

  • Boolean: Returns true if the set was changed as a result of the call (i.e., if at least one element was added), false otherwise.

Understanding addAll

The addAll function takes a collection of elements and adds each element to the HashSet. If any of the elements in the collection are already present in the set, they will not be added again. The function returns true if the set was modified as a result of the operation.

Examples

Basic Usage

To demonstrate the basic usage of addAll, we will create a HashSet and add elements to it from another collection.

Example

fun main() {
    val set = hashSetOf("Apple", "Banana")
    val newElements = listOf("Cherry", "Date")
    val wasChanged = set.addAll(newElements)

    println("Set after adding new elements: $set")
    println("Was the set changed? $wasChanged")
}

Output:

Set after adding new elements: [Apple, Banana, Cherry, Date]
Was the set changed? true

Adding Elements from Another Collection

This example shows how to use addAll to add elements from one collection to another.

Example

fun main() {
    val fruits = hashSetOf("Apple", "Banana")
    val moreFruits = listOf("Cherry", "Apple", "Elderberry")
    val wasChanged = fruits.addAll(moreFruits)

    println("Fruits set after adding more fruits: $fruits")
    println("Was the fruits set changed? $wasChanged")
}

Output:

Fruits set after adding more fruits: [Apple, Banana, Cherry, Elderberry]
Was the fruits set changed? true

Real-World Use Case

Managing a Set of Unique Email Addresses

In real-world applications, the addAll function can be used to manage a set of unique email addresses, ensuring that no duplicates are added when combining email lists.

Example

fun main() {
    val emailSet = hashSetOf("alice@example.com", "bob@example.com")
    val newEmails = listOf("charlie@example.com", "alice@example.com")
    val wasChanged = emailSet.addAll(newEmails)

    println("Email set after adding new emails: $emailSet")
    println("Was the email set changed? $wasChanged")
}

Output:

Email set after adding new emails: [alice@example.com, bob@example.com, charlie@example.com]
Was the email set changed? true

Conclusion

The addAll function in Kotlin is a powerful and flexible way to add multiple elements to a HashSet from a specified collection. It ensures that only unique elements are added, making it useful for various applications, including managing unique items and data validation. 

By understanding and using the addAll function, you can effectively manage and manipulate HashSet collections in your Kotlin applications.

Comments