Logo

0x5a.live

for different kinds of informations and explorations.

GitHub - StudioSol/set: A simple Set data structure implementation in Go (Golang) using LinkedHashMap.

A simple Set data structure implementation in Go (Golang) using LinkedHashMap. - StudioSol/set

Visit SiteGitHub - StudioSol/set: A simple Set data structure implementation in Go (Golang) using LinkedHashMap.

GitHub - StudioSol/set: A simple Set data structure implementation in Go (Golang) using LinkedHashMap.

A simple Set data structure implementation in Go (Golang) using LinkedHashMap. - StudioSol/set

Powered by 0x5a.live ๐Ÿ’—

Set

Build Status codecov Go Report Card GoDoc

Set is a simple Set data structure implementation in Go (Golang) using LinkedHashMap.

This library allow you to get a set of int64 or string without duplicated items.

Usage

package main

import (
	"fmt"

	"github.com/StudioSol/set"
)

func main() {
	duplicatedInt64 := []int64{1, 1, 2, 2, 3, 3}

	unduplicatedInt64 := set.NewLinkedHashSetINT64(duplicatedInt64...)

	// Get a []int64 from set
	unduplicatedArray := unduplicatedInt64.AsSlice()
	fmt.Println(unduplicatedArray) // will print [1 2 3]

	// Get the Length from set
	fmt.Println(unduplicatedInt64.Length()) // will print 3

	// Add new items in set
	unduplicatedInt64.Add(1, 2, 3, 4)
	fmt.Println(unduplicatedInt64.AsSlice()) // will print [1 2 3 4]

	// Check if item is in set
	fmt.Println(unduplicatedInt64.InArray(1)) // will print true
	fmt.Println(unduplicatedInt64.InArray(5)) // will print false

	// Get a []interface{} from set
	interfaceList := unduplicatedInt64.AsInterface()
	fmt.Println(interfaceList) // will print [1 2 3 4]

	// Allow to iter over set
	for i := range unduplicatedInt64.Iter() {
		fmt.Println(i)
	}

	// Remove items from set
	unduplicatedInt64.Remove(0, 1, 2, 3)
	fmt.Println(unduplicatedInt64.AsSlice()) // will print [4]
}

// You have same methods to LinkedHashSetString

GoLang Resources

are all listed below.

Resources

listed to get explored on!!

Made with โค๏ธ

to provide different kinds of informations and resources.