java怎么实现自动生成一个由英文字母(区分大小写)、数字、符号组成,6-12个字符 的密码

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java怎么实现自动生成一个由英文字母(区分大小写)、数字、符号组成,6-12个字符 的密码相关的知识,希望对你有一定的参考价值。

我的思路如下:
1、按照你自定义的规则制作一个字典,该字典包含可构成密码的所有合法字符;
2、在[6, 12]内随机生成一个int作为密码长度;
3、从字典中随机选取一个字符,共选取int次组成密码。
4、还可以制定高级规则,如同种字符不能相邻出现等。[可选]
参考技术A StringBuffer password = new StringBuffer();
for(int i = 0; i <= (int)(Math.random()*7)+6; i++)
int ran = (int)(Math.random()*94) + 33;
char c = (char) ran;
password.append(c);

System.out.println(password);本回答被提问者和网友采纳
参考技术B Random类试试。

unicode排序规则,汉字怎么区分大小写,区分重音,区分假名,区分宽度

unicode排序规则,汉字怎么区分大小写,区分重音,区分假名,区分宽度, 请详细作答,答得好,再给最高上限分.
先谢过

你翻翻Unicode字典就知道了,从4E00这个代码开始,后面大部分都是汉字了。
他们不区分大小写的,一个汉字一个编码。共6万多个汉字没有重复编码的,包括繁难偏僻的汉字在内。
假名重音什么的这些字体或符号是单独编码的,在一个语言里有音调或重音什么的,都在这个语言字体的后面另外加有的。如骂这个字的拼音是m加上a再加上去掉字符,共三个字组成的。
参考技术A 问题问的很笼统,一般的重音,假名,全角,半角都是由不同的字符(内码)代表的,unicode的排序没什么规律,但是每个国家的编码都有包括,其中的汉字部分称为“CJK统一汉字”(C指中国,J指日本,K指朝鲜),从0x4e00开始。

以上是关于java怎么实现自动生成一个由英文字母(区分大小写)、数字、符号组成,6-12个字符 的密码的主要内容,如果未能解决你的问题,请参考以下文章

Java UUID是不是区分大小写

Java UUID是不是区分大小写

怎么设置正则表达式不区分大小写

Java实现随机生成由字母数字组合的N位随机数

用java自动生成口令由数字、大小写字母及特殊字符,且至少包含其中两种字符

unicode排序规则,汉字怎么区分大小写,区分重音,区分假名,区分宽度