random

package
v0.5.7 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 23, 2024 License: MIT Imports: 5 Imported by: 0

README

Random

Go doc

暂无介绍...

目录导航

列出了该 package 下所有的函数及类型定义,可通过目录导航进行快捷跳转 ❤️

展开 / 折叠目录导航

包级函数定义

函数名称 描述
Dice 掷骰子
DiceN 掷骰子
NetIP 返回一个随机的IP地址
Port 返回一个随机的端口号
UsablePort 随机返回一个可用的端口号,如果没有可用端口号则返回 -1
IPv4 返回一个随机产生的IPv4地址。
IPv4Port 返回一个随机产生的IPv4地址和端口。
Int64 返回一个介于min和max之间的int64类型的随机数。
Int 返回一个介于min和max之间的的int类型的随机数。
Duration 返回一个介于min和max之间的的Duration类型的随机数。
Float64 返回一个0~1的浮点数
Float32 返回一个0~1的浮点数
IntN 返回一个0~n的整数
Bool 返回一个随机的布尔值
ProbabilitySlice 按概率随机从切片中产生一个数据并返回命中的对象及是否未命中
ProbabilitySliceIndex 按概率随机从切片中产生一个数据并返回命中的对象及对象索引以及是否未命中
Probability 输入一个概率,返回是否命中
ProbabilityChooseOne 输入一组概率,返回命中的索引
RefreshSeed 暂无描述...
ChineseName 返回一个随机组成的中文姓名。
EnglishName 返回一个随机组成的英文姓名。
Name 返回一个随机组成的中文或英文姓名
NumberString 返回一个介于min和max之间的string类型的随机数。
NumberStringRepair 返回一个介于min和max之间的string类型的随机数
HostName 返回一个随机产生的hostname。
WeightSlice 按权重随机从切片中产生一个数据并返回
WeightSliceIndex 按权重随机从切片中产生一个数据并返回数据和对应索引
WeightMap 按权重随机从map中产生一个数据并返回
WeightMapKey 按权重随机从map中产生一个数据并返回数据和对应 key

详情信息

func Dice() int

掷骰子

  • 常规掷骰子将返回 1-6 的随机数

func DiceN(n int) int

掷骰子

  • 与 Dice 不同的是,将返回 1-N 的随机数

func NetIP() net.IP

返回一个随机的IP地址


func Port() int

返回一个随机的端口号


func UsablePort() int

随机返回一个可用的端口号,如果没有可用端口号则返回 -1


func IPv4() string

返回一个随机产生的IPv4地址。


func IPv4Port() string

返回一个随机产生的IPv4地址和端口。


func Int64(min int64, max int64) int64

返回一个介于min和max之间的int64类型的随机数。


func Int(min int, max int) int

返回一个介于min和max之间的的int类型的随机数。


func Duration(min int64, max int64) time.Duration

返回一个介于min和max之间的的Duration类型的随机数。


func Float64() float64

返回一个0~1的浮点数


func Float32() float32

返回一个0~1的浮点数


func IntN(n int) int

返回一个0~n的整数


func Bool() bool

返回一个随机的布尔值


func ProbabilitySlice[T any](getProbabilityHandle func (data T) float64, data ...T) (hit T, miss bool)

按概率随机从切片中产生一个数据并返回命中的对象及是否未命中

  • 当总概率小于 1 将会发生未命中的情况
查看 / 收起单元测试

func TestProbabilitySlice(t *testing.T) {
	var awards = []int{1, 2, 3, 4, 5, 6, 7}
	var probability = []float64{0.1, 2, 0.1, 0.1, 0.1, 0.1, 0.1}
	for i := 0; i < 50; i++ {
		t.Log(random.ProbabilitySlice(func(data int) float64 {
			return probability[data-1]
		}, awards...))
	}
}


func ProbabilitySliceIndex[T any](getProbabilityHandle func (data T) float64, data ...T) (hit T, index int, miss bool)

按概率随机从切片中产生一个数据并返回命中的对象及对象索引以及是否未命中

  • 当总概率小于 1 将会发生未命中的情况

func Probability(p int, full ...int) bool

输入一个概率,返回是否命中

  • 当 full 不为空时,将以 full 为基数,p 为分子,计算命中概率

func ProbabilityChooseOne(ps ...int) int

输入一组概率,返回命中的索引


func RefreshSeed(seed ...int64)


func ChineseName() string

返回一个随机组成的中文姓名。


func EnglishName() string

返回一个随机组成的英文姓名。


func Name() string

返回一个随机组成的中文或英文姓名

  • 以1/2的概率决定生产的是中文还是英文姓名。

func NumberString(min int, max int) string

返回一个介于min和max之间的string类型的随机数。


func NumberStringRepair(min int, max int) string

返回一个介于min和max之间的string类型的随机数

  • 通过Int64生成一个随机数,当结果的字符串长度小于max的字符串长度的情况下,使用0在开头补齐。

func HostName() string

返回一个随机产生的hostname。


func WeightSlice[T any](getWeightHandle func (data T) int64, data ...T) T

按权重随机从切片中产生一个数据并返回


func WeightSliceIndex[T any](getWeightHandle func (data T) int64, data ...T) (item T, index int)

按权重随机从切片中产生一个数据并返回数据和对应索引


func WeightMap[K comparable, T any](getWeightHandle func (data T) int64, data map[K]T) T

按权重随机从map中产生一个数据并返回


func WeightMapKey[K comparable, T any](getWeightHandle func (data T) int64, data map[K]T) (item T, key K)

按权重随机从map中产生一个数据并返回数据和对应 key


Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Bool added in v0.0.15

func Bool() bool

Bool 返回一个随机的布尔值

func ChineseName

func ChineseName() string

ChineseName 返回一个随机组成的中文姓名。

func Dice added in v0.0.24

func Dice() int

Dice 掷骰子

  • 常规掷骰子将返回 1-6 的随机数

func DiceN added in v0.0.24

func DiceN(n int) int

DiceN 掷骰子

  • 与 Dice 不同的是,将返回 1-N 的随机数

func Duration

func Duration(min int64, max int64) time.Duration

Duration 返回一个介于min和max之间的的Duration类型的随机数。

func EnglishName

func EnglishName() string

EnglishName 返回一个随机组成的英文姓名。

func Float32

func Float32() float32

Float32 返回一个0~1的浮点数

func Float32Range added in v0.5.4

func Float32Range(min float32, max float32) float32

Float32Range 返回一个介于min和max之间的的float32类型的随机数。

func Float64

func Float64() float64

Float64 返回一个0~1的浮点数

func Float64Range added in v0.5.4

func Float64Range(min float64, max float64) float64

Float64Range 返回一个介于min和max之间的的float64类型的随机数。

func HostName

func HostName() string

HostName 返回一个随机产生的hostname。

func IPv4 added in v0.3.1

func IPv4() string

IPv4 返回一个随机产生的IPv4地址。

func IPv4Port added in v0.3.1

func IPv4Port() string

IPv4Port 返回一个随机产生的IPv4地址和端口。

func Int

func Int(min int, max int) int

Int 返回一个介于min和max之间的的int类型的随机数。

func Int32 added in v0.5.4

func Int32(min int32, max int32) int32

Int32 返回一个介于min和max之间的的int32类型的随机数。

func Int64

func Int64(min int64, max int64) int64

Int64 返回一个介于min和max之间的int64类型的随机数。

func IntN

func IntN(n int) int

IntN 返回一个0~n的整数

func Name

func Name() string

Name 返回一个随机组成的中文或英文姓名

  • 以1/2的概率决定生产的是中文还是英文姓名。

func NetIP added in v0.3.1

func NetIP() net.IP

NetIP 返回一个随机的IP地址

func NumberString

func NumberString(min int, max int) string

NumberString 返回一个介于min和max之间的string类型的随机数。

func NumberStringRepair

func NumberStringRepair(min int, max int) string

NumberStringRepair 返回一个介于min和max之间的string类型的随机数

  • 通过Int64生成一个随机数,当结果的字符串长度小于max的字符串长度的情况下,使用0在开头补齐。

func Port added in v0.3.1

func Port() int

Port 返回一个随机的端口号

func Probability added in v0.0.24

func Probability(p int, full ...int) bool

Probability 输入一个概率,返回是否命中

  • 当 full 不为空时,将以 full 为基数,p 为分子,计算命中概率

func ProbabilityChooseOne added in v0.0.24

func ProbabilityChooseOne(ps ...int) int

ProbabilityChooseOne 输入一组概率,返回命中的索引

func ProbabilitySlice added in v0.2.0

func ProbabilitySlice[T any](getProbabilityHandle func(data T) float64, data ...T) (hit T, miss bool)

ProbabilitySlice 按概率随机从切片中产生一个数据并返回命中的对象及是否未命中

  • 当总概率小于 1 将会发生未命中的情况

func ProbabilitySliceIndex added in v0.2.1

func ProbabilitySliceIndex[T any](getProbabilityHandle func(data T) float64, data ...T) (hit T, index int, miss bool)

ProbabilitySliceIndex 按概率随机从切片中产生一个数据并返回命中的对象及对象索引以及是否未命中

  • 当总概率小于 1 将会发生未命中的情况

func RefreshSeed

func RefreshSeed(seed ...int64)

func UsablePort added in v0.5.2

func UsablePort() int

UsablePort 随机返回一个可用的端口号,如果没有可用端口号则返回 -1

func WeightMap

func WeightMap[K comparable, T any](getWeightHandle func(data T) int64, data map[K]T) T

WeightMap 按权重随机从map中产生一个数据并返回

func WeightMapKey added in v0.2.1

func WeightMapKey[K comparable, T any](getWeightHandle func(data T) int64, data map[K]T) (item T, key K)

WeightMapKey 按权重随机从map中产生一个数据并返回数据和对应 key

func WeightSlice

func WeightSlice[T any](getWeightHandle func(data T) int64, data ...T) T

WeightSlice 按权重随机从切片中产生一个数据并返回

func WeightSliceIndex added in v0.2.1

func WeightSliceIndex[T any](getWeightHandle func(data T) int64, data ...T) (item T, index int)

WeightSliceIndex 按权重随机从切片中产生一个数据并返回数据和对应索引

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL