Documentation ¶
Index ¶
- Constants
- func ExpFloat64() float64
- func Float32() float32
- func Float64() float64
- func GetRandomNumber(args string, n int) []int
- func GetRandomNumbers(args string) []int
- func GetRandomValues(numbers []int, n int) []int
- func GetRandomValuesInt64(numbers []int64, n int) []int64
- func GetRandomWeight(data RandInterface, n int) interface{}
- func GlobalRand() *rand.Rand
- func Int() int
- func Int31() int32
- func Int31n(n int32) int32
- func Int63() int64
- func Int63n(n int64) int64
- func Intn(n int) int
- func NormFloat64() float64
- func Perm(n int) []int
- func Read(p []byte) (n int, err error)
- func Seed(seed int64)
- func Shuffle(n int, swap func(i, j int))
- func Uint32() uint32
- func Uint64() uint64
- type LCGRand
- type RandInterface
- type RandItem
Constants ¶
const ( LCG_A uint32 = 1664525 LCG_C uint32 = 1013904223 )
Variables ¶
This section is empty.
Functions ¶
func ExpFloat64 ¶ added in v1.4.15
func ExpFloat64() float64
ExpFloat64 returns an exponentially distributed float64 in the range (0, +math.MaxFloat64] with an exponential distribution whose rate parameter (lambda) is 1 and whose mean is 1/lambda (1) from the default Source. To produce a distribution with a different rate parameter, callers can adjust the output using:
sample = ExpFloat64() / desiredRateParameter
func Float32 ¶ added in v1.4.15
func Float32() float32
Float32 returns, as a float32, a pseudo-random number in [0.0,1.0) from the default Source.
func Float64 ¶ added in v1.4.15
func Float64() float64
Float64 returns, as a float64, a pseudo-random number in [0.0,1.0) from the default Source.
func GetRandomNumber ¶
*
- 数值抽取器(从枚举值,范围随机值,定值 中随机抽出一个值)
- 枚举值(支持单个出现概率):1,2,4 或 1:10,2:30,4:30
- 范围值: 1~10
- 定值:12
- 支持混合使用 如:1~10,44~89,2~5 又如 2~10:40
- 支持概率后缀 代表该值被抽取出来的几率 值越高被抽出的概率越大 并不限定后缀值的范围 如:1:20,1~4:30,4:500 *
- @param args
- @param n 随机个数
- @param radom
- @return
func GetRandomNumbers ¶
*
- 加权随机数 数值抽取器 *
- @param args 以“#”劈分数组然后再在数组元素中每一位获取一个随机数
- @param radom
- @see #GetRandomNumber(String, Random)
- @return
func GetRandomWeight ¶
func GetRandomWeight(data RandInterface, n int) interface{}
GetRandomWeight 随机数选取
func GlobalRand ¶ added in v1.5.5
func Int ¶ added in v1.4.15
func Int() int
Int returns a non-negative pseudo-random int from the default Source.
func Int31 ¶ added in v1.4.15
func Int31() int32
Int31 returns a non-negative pseudo-random 31-bit integer as an int32 from the default Source.
func Int31n ¶ added in v1.4.15
Int31n returns, as an int32, a non-negative pseudo-random number in [0,n) from the default Source. It panics if n <= 0.
func Int63 ¶ added in v1.4.15
func Int63() int64
Int63 returns a non-negative pseudo-random 63-bit integer as an int64 from the default Source.
func Int63n ¶ added in v1.4.15
Int63n returns, as an int64, a non-negative pseudo-random number in [0,n) from the default Source. It panics if n <= 0.
func Intn ¶ added in v1.4.8
Intn returns, as an int, a non-negative pseudo-random number in [0,n) from the default Source. It panics if n <= 0.
func NormFloat64 ¶ added in v1.4.15
func NormFloat64() float64
NormFloat64 returns a normally distributed float64 in the range [-math.MaxFloat64, +math.MaxFloat64] with standard normal distribution (mean = 0, stddev = 1) from the default Source. To produce a different normal distribution, callers can adjust the output using:
sample = NormFloat64() * desiredStdDev + desiredMean
func Perm ¶ added in v1.4.15
Perm returns, as a slice of n ints, a pseudo-random permutation of the integers [0,n) from the default Source.
func Read ¶ added in v1.4.15
Read generates len(p) random bytes from the default Source and writes them into p. It always returns len(p) and a nil error. Read, unlike the Rand.Read method, is safe for concurrent use.
func Seed ¶ added in v1.4.15
func Seed(seed int64)
Seed uses the provided seed value to initialize the default Source to a deterministic state. If Seed is not called, the generator behaves as if seeded by Seed(1). Seed values that have the same remainder when divided by 2^31-1 generate the same pseudo-random sequence. Seed, unlike the Rand.Seed method, is safe for concurrent use.
func Shuffle ¶ added in v1.4.15
Shuffle pseudo-randomizes the order of elements using the default Source. n is the number of elements. Shuffle panics if n < 0. swap swaps the elements with indexes i and j.
Types ¶
type LCGRand ¶
type LCGRand struct {
// contains filtered or unexported fields
}
func NewLCGRand ¶
func (*LCGRand) RandFloat64 ¶
type RandInterface ¶
RandInterface 随机数选取器接口