How to create a Set of Strings in Go - Step by Step Examples



How to create a Set of Strings in Go ?

Answer

In Go, you can use a map with empty structs to create a collection of unique strings.



✐ Examples

1 Create Set of Strings in Go

In this example,

  1. We create a new map named stringSet where string keys represent unique strings.
  2. We use empty structs struct{} as values to minimize memory usage.
  3. The resulting map contains unique strings as keys with no associated values.

Go Program

package main

import (
	"fmt"
)

func main() {
	// Create a map for string set
	stringSet := make(map[string]struct{})

	// Add strings to the set
	stringSet["Apple"] = struct{}{}
	stringSet["Banana"] = struct{}{}
	stringSet["Cherry"] = struct{}{}

	// Print the set
	fmt.Println(stringSet)
}

Output

map[Apple:{} Banana:{} Cherry:{}]

2 Check if Set Contains a String

In this example,

  1. We use map lookup to check if a specific string exists in the map.
  2. If the string exists, it will return a non-nil empty struct; otherwise, it will return nil.

Go Program

package main

import (
	"fmt"
)

func main() {
	// Check if the set contains a string
	containsBanana := stringSet["Banana"]
	fmt.Printf("Set contains Banana: %t\n", containsBanana != nil)
}

Output

Set contains Banana: true

Summary

In this tutorial, we learned How to create a Set of Strings in Go language with well detailed examples.




More Go Sets Tutorials

  1. How to create an Empty Set in Go ?
  2. How to Initialize a Set in Go ?
  3. How to Get Length of a Set in Go ?
  4. How to create a Set of size N in Go ?
  5. How to create a Set of Numbers from 1 to N in Go ?
  6. How to create a Set of integers in Go ?
  7. How to create a Set of Strings in Go ?
  8. How to Access Items in a Set in Go ?
  9. How to get a Random Item in a Set in Go ?
  10. How to Iterate Over a Set in Go ?
  11. How to check if a Set is Empty in Go ?
  12. How to check if a Set is Not Empty in Go ?
  13. How to get Subset from a Set in Go ?
  14. How to check if a Specific Item is present in the Set in Go ?
  15. How to check if a Set contains all the items of Another Set in Go ?
  16. How to Sort Items of a Set in Go ?
  17. How to Copy a Set in Go ?
  18. How to add an Item to a Set in Go ?
  19. How to find Union of Two Sets in Go ?
  20. How to find Intersection of Two Sets in Go ?
  21. How to check if Two Sets are Equal in Go ?
  22. How to Convert a Set of Integers to a Set of Strings in Go ?
  23. How to Convert a Set of Strings to a Set of Integers in Go ?
  24. How to Convert a Set of Floats to a Set of Strings in Go ?
  25. How to Convert a Set of Strings to a Set of Floats in Go ?
  26. How to Filter Items of a Set based on a Condition in Go ?
  27. How to Remove Specific Item from a Set in Go ?
  28. How to Remove Items from Set based on a Condition in Go ?
  29. How to create a Set of Sets in Go ?