java随机生成中文姓名
package com.yc.spring.util;import java.util.Random;public class NameBuilder {private static String xings = "赵 钱 孙 李 周 吴 郑 王 冯 陈 褚 卫 " + "蒋 沈 韩 杨 朱 秦 尤 许 何 吕 施 张 " + "孔 曹 严 华 金 魏 陶 姜 戚 谢 邹 喻 "+ "柏 水 窦 章 云 苏 潘 葛 奚 范 彭 郎 " + "万俟 司马 上官 欧阳 夏侯 诸葛 闻人 东方 赫连 皇甫 尉迟 公羊";private static String mings = "碧凡、夏菡、曼香、若烟、半梦、雅绿、冰蓝、灵槐、平安、书翠、翠风、香巧、代云、" + "友巧、听寒、梦柏、醉易、访旋、亦玉、凌萱、访卉、怀亦、笑蓝、春翠、靖柏、书雪、"+ "乐枫、念薇、靖雁、寻春、恨山、从寒、忆香、觅波、静曼、凡旋、新波、代真、新蕾、" + "雁玉、冷卉、紫山、千琴、恨天、傲芙、盼山、怀蝶、冰兰、问旋、从南、白易、问筠、"+ "如霜、半芹、寒雁、怜云、寻文、谷雪、乐萱、涵菡、海莲、傲蕾、青槐、冬儿、易梦、" + "惜雪、宛海、之柔、夏青";private static Random r = new Random();/*** 使用指定的姓氏,用xings里面的字,随机生成姓名* @param xing 指定姓氏* @param length 指定名字总长度* @return*/public static String build(String xing, int length) {// 定义姓名String xingming = xing;//创建随机对象Random r = new Random();while (xingming.length() < length) {// 从名字符串中随机取出一个字符的编号int index = r.nextInt(mings.length());// 从名字字符串中取一个字String s = mings.substring(index, index + 1);// 如果s是顿号,就重新再取一次(使用常量比变量,这是推荐的方式)if ("、".equals(s)) {continue;} else {//将名 加到 姓名中取xingming += s;}}return xingming;}/*** 使用xings里面姓氏,用xings里面的字,随机生成姓名* @param length 指定名字总长度* @return*/public static String build(int length) {// 判断姓名的长度必须大于 2if (length < 2) {System.out.println("姓名不能少于2个字符");return null;}/*** 因为有些姓氏不能拆分(如:复姓),因此选姓氏不能像选名字那样一个一个字选* 因此要将xings转成数组*/// 先随机选姓氏Random r = new Random();String[] xingArr = xings.split(" ");int index = r.nextInt(xingArr.length);String xing = xingArr[index];// 有了姓氏,再调用上面的选名字的方法,就OK了return build(xing, length);}/*** 随机生成2~3个字的名字* @return*/public static String build() {int length = r.nextInt(2) + 2;return build(length);}public static void main(String[] args) {System.out.println("\r\n指定姓氏造100个3个字的名字");for (int i = 0; i < 100; i++) {System.out.print(build("廖", 3) + ",");if ((i + 1) % 10 == 0) {System.out.println();}}System.out.println("\r\n不指定姓氏造100个3个字的名字");for (int i = 0; i < 100; i++) {System.out.print(build(3) + ",");if ((i + 1) % 10 == 0) {System.out.println();}}System.out.println("\r\n随机造100个名2~3个字的字");for (int i = 0; i < 100; i++) {System.out.print(build() + "\t");if ((i + 1) % 10 == 0) {System.out.println();}}}
}
java随机生成中文姓名相关推荐
- Java随机生成中文姓名+手机+邮编+地址
import java.util.HashMap; import java.util.Map; /** * 随机生成中文姓名,性别,Email,手机号,住址 * @author X-rapido */ ...
- java随机生成中文昵称_使用java随机生成中文姓名
将字符串形式的名字转换为数组形式 private static String names= "碧凡.夏菡.曼香.若烟.半梦.雅绿.冰蓝.灵槐.平安.书翠.翠风.香巧.代云." + ...
- 使用java随机生成中文姓名
将字符串形式的名字转换为数组形式 private static String names= "碧凡.夏菡.曼香.若烟.半梦.雅绿.冰蓝.灵槐.平安.书翠.翠风.香巧.代云." + ...
- Java开源 之随机生成中文姓名,手机号,邮编,住址
import java.util.HashMap; import java.util.Map;/*** 随机生成中文姓名,性别,Email,手机号,住址*/ public class RandomVa ...
- 用java随机生成中文名字(百家姓/常用名/随机生成汉字)
package com.de.util;import org.apache.commons.collections.CollectionUtils; import org.apache.commons ...
- java随机生成中文昵称_Java 中文姓名随机生成
项目要求产生一些模拟的中文姓名,我的想法是先产生姓氏,再随机产生名字,可以是两个字的也可以是三个字的.使用的是 GB2312实现的中文字,可自行百度"信息交换用汉字编码字符集"了解 ...
- mysql随机生成中文姓名_mysql 随机生成姓名函数,及模拟大量测试数据
如下图所示,函数rand_name,过程insert_user: -- 开启允许创建函数 set global log_bin_trust_function_creators = 1; -- 创建随机 ...
- java 随机生成简单中文_用java语言实现随机生成中文姓名
中文字符一般使用的编码格式为"GB2312",那么gb2312到底是什么,简单介绍一下(参考百度百科) GB2312 一般指信息交换用汉字编码字符集. <信息交换用汉字编码字 ...
- java 姓名_java 随机生成中文姓名人名
public static void main(String[] args) { for(int i=0;i<50;i++){ System.out.println(generateName() ...
最新文章
- Linux redhat 5.4上安装MYDNS
- 用yacc编写的算术运算计算器_详细的mac计算器操作技巧+快捷键分享
- sqlite字段是否存在_学习廖雪峰的JAVA教程---反射(访问字段)
- 微信小程序退出页面时清除定时器
- 关于问题 SAP ABAP ME2O 事物码如何(是否可以)打印发货单?如何自己找到答案
- 400. 第 N 位数字
- Python 爬虫性能相关总结
- 将ping命令结果输出到文本
- 客户端控件Javascript验证类
- java对象地址连续_Java面向对象中地址的理解(长期修改)
- Linux创建文本文件【Ubuntu】
- 黑苹果固态硬盘_普通电脑也能尝试:MacOS黑苹果+雷电3硬盘盒测试
- PID控制(三)(位置式和增量式PID)
- Android 实现最新QQ登陆页面
- msp430发送pwm信号_MSP430F149学习之路——PWM信号
- soul网关mysql8_Dubbo学习系列之十七(微服务Soul网关)
- java就是我的幸福,关于幸福的句子经典
- java qq邮箱登录_SpringBoot实现QQ邮箱注册和登录
- Linux-Logs 查看日志文件
- 禁用Chrome跟随系统的DPI缩放