当前第2页 返回上一页
golang中使用rand产生随机不重复数字:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 | package test
import (
"fmt"
"math/rand"
"time"
)
func RandomTestBase() {
for i := 0; i < 5; i++ {
nums := generateRandomNumber(10, 30, 10)
fmt.Println(nums)
}
}
func generateRandomNumber(start int, end int, count int) []int {
if end < start || (end-start) < count {
return nil
}
nums := make([]int, 0)
r := rand.New(rand.NewSource(time.Now().UnixNano()))
for len(nums) < count {
num := r.Intn((end - start)) + start
exist := false
for _, v := range nums {
if v == num {
exist = true
break
}
}
if !exist {
nums = append(nums, num)
}
}
return nums
}
|
输出结果:
[12 20 18 19 21 28 15 13 11 10]
[28 15 12 10 20 18 16 24 27 17]
[25 28 29 19 21 12 16 13 11 15]
[27 20 19 23 18 13 21 24 12 26]
[19 10 27 18 28 12 22 14 16 26]
推荐:golang教程
以上就是golang中使用rand产生随机不重复数字的详细内容,更多文章请关注木庄网络博客!!
返回前面的内容
相关阅读 >>
手撸golang 结构型设计模式 代理模式
手撸golang 结构型设计模式 代理模式
ssh连接服务器后执行多条命令
使用gin封装一个web脚手架(六):实现session(中)
golang编译为什么快
专业技能:熟练安装各种软件???
手撸golang etcd raft协议之3
整理在vscode中go编码发生的问题
golang解决中文乱码的方法
golang的组合和继承之间有什么区别?
更多相关阅读请进入《golang》频道 >>
老貘
一个与时俱进的Go编程知识库。
转载请注明出处:木庄网络博客 » golang中使用rand产生随机不重复数字