直接上代码

import org.springframework.util.Assert;import java.util.HashSet;
import java.util.Iterator;
import java.util.Random;
import java.util.Set;public class InviteCodeUtil {public static String generateInviteCode(int len) {Assert.isTrue(len > 0, "长度要大于0");char[] chars = {'Q', 'W', 'E', '8', 'S', '2', 'D', 'Z','X', '9', 'C', '7', 'P', '5', 'K', '3','M', 'J', 'U', 'F', 'R', '4', 'V', 'Y','T', 'N', '6', 'B', 'G', 'H', 'A', 'L'};Random random = new Random();char[] inviteChars = new char[len];for (int i = 0; i < len; i++) {inviteChars[i] = chars[random.nextInt(chars.length)];}return String.valueOf(inviteChars);}public static void main(String[] args) {long start = System.currentTimeMillis();Set set = new HashSet();for (int i = 0; i < 1000000; i++) {set.add(generateInviteCode(6));}Iterator iterator = set.iterator();for (int i =0;i<10;i++){System.out.println(iterator.next());}System.out.println();System.out.println(set.size());}
}

测试结果:

B76BS3
994UXZ
Z5H933
VTDP24
AV6BSB
GZMLHF
ZEDPSM
FWKMZY
BKD5HA
RSH6LR999536

运行过几次,重复率不到1/1000,生产中为了确保不重复先需要查询数据库有没有重复的邀请码,没有重复则插入数据库,否则再生成一次。

Java邀请码生成小工具相关推荐

  1. 小程序源码:炫酷手持滚动弹幕生成小工具微信小程序-多玩法安装简单

    这是一款滚动弹幕生成微信小程序源码 让弹幕文字在手机屏幕上跑起来,LED弹幕 手机弹幕,告白神奇,等 支持多种模板,每一种模板都支持自定义颜色等等 字体跳动,字体表白等等 另外用户也可以支持自定义文字 ...

  2. 小程序源码:炫酷手持滚动弹幕生成小工具

    这是一款滚动弹幕生成微信小程序源码 让弹幕文字在手机屏幕上跑起来,LED弹幕 手机弹幕,告白神奇,等 支持多种模板,每一种模板都支持自定义颜色等等 字体跳动,字体表白等等 另外用户也可以支持自定义文字 ...

  3. 【小程序源码】手持滚动弹幕生成小工具多样化模板

    这是一款滚动弹幕生成微信小程序源码 让弹幕文字在手机屏幕上跑起来,LED弹幕 手机弹幕,告白神奇,等 支持多种模板,每一种模板都支持自定义颜色等等 字体跳动,字体表白等等 另外用户也可以支持自定义文字 ...

  4. 趣谈唯一邀请码生成方法

    趣谈唯一邀请码生成方法 前段时间项目上需要生成唯一邀请码!嘿嘿,多简单的一件事,心里就已默默将代码写了一遍.但小小的邀请码生成却也小有乾坤,这就是后话了. 一.最简单的实现 很多人 肯定都和我一开始一 ...

  5. 微信小程序:炫酷手持滚动弹幕生成小工具

    这是一款滚动弹幕生成微信小程序源码 让弹幕文字在手机屏幕上跑起来,LED弹幕 手机弹幕,告白神奇,等 支持多种模板,每一种模板都支持自定义颜色等等 字体跳动,字体表白等等 另外用户也可以支持自定义文字 ...

  6. C#实战:基于ItextSharp技术标签生成小工具

    目录 1.运行主界面 2.标签生成界面 3.需要引入的依赖包 4.解决方案目录 5.主要代码 1.新建PdfUtils工具类 2.Form1.cs 窗体主要代码 IT技术分享社区 / Itext Sh ...

  7. [开源]C#二维码生成解析工具,可添加自定义Logo

    原文:[开源]C#二维码生成解析工具,可添加自定义Logo 二维码又称 QR Code,QR 全称 Quick Response,是一个近几年来移动设备上超流行的一种编码方式,它比传统的 Bar Co ...

  8. 发布一个实体类属性生成小工具,给开发加点料

    做了很久的代码生成工具,基本上都是基于表生成实体类属性的,把数据库表的信息拿出来,然后之乎者也后生成一个标准的实体类,包含字段.属性.描述等东西. 是基于整个数据库生成整个框架代码的工具,如我的代码生 ...

  9. C#:图标生成小工具

    制作APP时经常要制作不同尺寸的图标,制作了一个C#小工具实现一键生成不同尺寸的图标和对应的文件目录 先上图 1.点击生成后弹出目录 2.android端目录结构 3.ios端目录结构 4.下载地址 ...

最新文章

  1. dnn神经网络_OpenCV3.3深度神经网络(DNN)模块
  2. python在中小学教学中的应用-小学信息技术教学中进行Python 编程语言教学的策略...
  3. 如何在 SAP UI5 应用中集成第三方库 :一个在移动设备上查看 Web 应用打印调试信息的小技巧
  4. 每个java小应用程序都得继承,JAVA复习题3
  5. cv2.cornerHarris()详解 python+OpenCV 中的 Harris 角点检测
  6. 这款能够生成文档的接口测试软件,为什么越来越受欢迎?
  7. 暑假快来了,又该何去何从
  8. python 可变参数示例
  9. Atitit s2018.2 s2 doc list on home ntpc.docx  \Atiitt uke制度体系 法律 法规 规章 条例 国王诏书.docx \Atiitt 手写文字
  10. 使用Scylla进行OSINT信息收集
  11. 指尖上的学问——wi输入法开发实记
  12. pano2vr.exe下载
  13. matlab 读取mdf文件路径,通过 MDF 数据存储使用 MDF 文件
  14. 2021杭电计算机考研经验帖
  15. 《德鲁克管理思想精要》读书笔记1 - 管理是什么?
  16. opencv4 QR码检测和识别源码解析
  17. python3强智教务系统个人课表爬虫
  18. 10个值得珍藏的4K高清壁纸网站推荐
  19. IOS 地图导航(其中包括苹果地图、百度地图、高德地图、谷歌地图)
  20. 总结2016,展望2017

热门文章

  1. 电脑开机无声音无图像的原因
  2. c 语言中双向链表逆转编程题,C/C++ 双链表之逆序的实例详解
  3. 一个很牛逼的工具XueTr
  4. 很多句话让XueTr卸载不了我们的驱动(ObjectType HOOK)
  5. 浪漫故事:常见HTTP状态码的另类解析
  6. Java+JSP基于ssm广州市家教中介服务网站
  7. 电商平台零售数据分析
  8. JAVA PPT 柱状图_Java 将 PPT 形状(表格、文本框、心形、图表等)保存成图片
  9. Cesium三维地球上添加点、线、面、文字、图标(图片)、模型等标绘
  10. 如何选择免费CRM软件?有什么功能?