Package random implements some basic functions to generate random int and string.
import (
"github.com/duke-git/lancet/v2/random"
)
- RandBytes
- RandInt
- RandString
- RandUpper
- RandLower
- RandNumeral
- RandNumeralOrLetter
- RandSymbolChar
- UUIdV4
- RandUniqueIntSlice
- RandFloat
- RandFloats
Generate random byte slice.
Signature:
func RandBytes(length int) []byte
Example:Run
package main
import (
"fmt"
"github.com/duke-git/lancet/v2/random"
)
func main() {
randBytes := random.RandBytes(4)
fmt.Println(randBytes)
}
Generate random int between min and max, may contain min, not max.
Signature:
func RandInt(min, max int) int
Example:Run
package main
import (
"fmt"
"github.com/duke-git/lancet/v2/random"
)
func main() {
rInt := random.RandInt(1, 10)
fmt.Println(rInt)
}
Generate random given length string. only contains letter (a-zA-Z)
Signature:
func RandString(length int) string
Example:Run
package main
import (
"fmt"
"github.com/duke-git/lancet/v2/random"
)
func main() {
randStr := random.RandString(6)
fmt.Println(randStr) //pGWsze
}
Generate a random upper case string
Signature:
func RandUpper(length int) string
Example:Run
package main
import (
"fmt"
"github.com/duke-git/lancet/v2/random"
)
func main() {
randStr := random.RandString(6)
fmt.Println(randStr) //PACWGF
}
Generate a random lower case string
Signature:
func RandLower(length int) string
Example:Run
package main
import (
"fmt"
"github.com/duke-git/lancet/v2/random"
)
func main() {
randStr := random.RandLower(6)
fmt.Println(randStr) //siqbew
}
Generate a random numeral string
Signature:
func RandNumeral(length int) string
Example:Run
package main
import (
"fmt"
"github.com/duke-git/lancet/v2/random"
)
func main() {
randStr := random.RandNumeral(6)
fmt.Println(randStr) //035172
}
generate a random numeral or letter string
Signature:
func RandNumeralOrLetter(length int) string
Example:Run
package main
import (
"fmt"
"github.com/duke-git/lancet/v2/random"
)
func main() {
randStr := random.RandNumeralOrLetter(6)
fmt.Println(randStr) //0aW7cQ
}
Generate a random symbol char of specified length.
Signature:
func RandSymbolChar(length int) string
Example:Run
package main
import (
"fmt"
"github.com/duke-git/lancet/v2/random"
)
func main() {
randStr := random.RandSymbolChar(6)
fmt.Println(randStr) // random string like: @#(_")
}
Generate a random UUID of version 4 according to RFC 4122.
Signature:
func UUIdV4() (string, error)
Example:Run
package main
import (
"fmt"
"github.com/duke-git/lancet/v2/random"
)
func main() {
uuid, err := random.UUIdV4()
if err != nil {
return
}
fmt.Println(uuid)
}
Generate a slice of random int of length n that do not repeat.
Signature:
func RandUniqueIntSlice(n, min, max int) []int
Example:Run
package main
import (
"fmt"
"github.com/duke-git/lancet/v2/random"
)
func main() {
result := random.RandUniqueIntSlice(5, 0, 10)
fmt.Println(result) //[0 4 7 1 5] (random)
}
Generate a random float64 number between [min, max) with specific precision.
Signature:
func RandFloat(min, max float64, precision int) float64
Example:Run
package main
import (
"fmt"
"github.com/duke-git/lancet/v2/random"
)
func main() {
floatNumber := random.RandFloat(1.0, 5.0, 2)
fmt.Println(floatNumber) //2.14 (random number)
}
Generate a slice of random float64 numbers of length n that do not repeat.
Signature:
func RandFloats(n int, min, max float64, precision int) []float64
Example:Run
package main
import (
"fmt"
"github.com/duke-git/lancet/v2/random"
)
func main() {
floatNumbers := random.RandFloats(5, 1.0, 5.0, 2)
fmt.Println(floatNumbers) //[3.42 3.99 1.3 2.38 4.23] (random)
}