package com.yong.course.chinese;import java.io.UnsupportedEncodingException;
import java.util.Random;
import java.util.Scanner;/*** @Author: yong* @Date: 2022-09-17 14:02* @Explain:*/public class ChineseRandomGeneration {/*** 方法一: 随机生成汉字: 根据Unicode生成** @param len */public static void unicodeMethod(int len) {/*方法一: 随机生成汉字: 根据Unicode生成*/StringBuffer sbu = new StringBuffer();for (int i = 0; i < len; i++) {char result = (char) (0x4e00 + (int) (Math.random() * (0x9fa5 - 0x4e00 + 1)));sbu.append(result);}System.out.println("result : " + sbu.toString());}/*** 方法二: 随机生成汉字: 根据GBK编码生成** @param len*/public static void GBKMethod(int len) {/*方法二: 随机生成汉字: 根据GBK编码生成*/StringBuffer sbu = new StringBuffer();String str = "";int highPos;int lowPos;Random random = new Random();for (int i = 0; i < len; i++) {highPos = (176 + Math.abs(random.nextInt(39)));lowPos = (161 + Math.abs(random.nextInt(93)));byte[] b = new byte[2];b[0] = (Integer.valueOf(highPos)).byteValue();b[1] = (Integer.valueOf(lowPos)).byteValue();try {str = new String(b, "GBK");sbu.append(str + " ");} catch (UnsupportedEncodingException e) {e.printStackTrace();}}
//        char result = str.charAt(0);
//        System.out.println("result : " + result);System.out.println("result: " + sbu.toString());}//自动生成名字(中文)public static void getRandomJianHan(int len) {String ret = "";for (int i = 0; i < len; i++) {String str = null;int hightPos, lowPos; // 定义高低位Random random = new Random();hightPos = (176 + Math.abs(random.nextInt(39))); // 获取高位值lowPos = (161 + Math.abs(random.nextInt(93))); // 获取低位值byte[] b = new byte[2];b[0] = (new Integer(hightPos).byteValue());b[1] = (new Integer(lowPos).byteValue());try {str = new String(b, "GBK"); // 转成中文} catch (UnsupportedEncodingException ex) {ex.printStackTrace();}ret += str;}System.out.println("result: " + ret);}//生成随机用户名,数字和字母组成,  public static void getStringRandom(int len) {String val = "";Random random = new Random();//参数length,表示生成几位随机数  for(int i = 0; i < len; i++) {String charOrNum = random.nextInt(2) % 2 == 0 ? "char" : "num";//输出字母还是数字  if( "char".equalsIgnoreCase(charOrNum) ) {//输出是大写字母还是小写字母  int temp = random.nextInt(2) % 2 == 0 ? 65 : 97;val += (char)(random.nextInt(26) + temp);} else if( "num".equalsIgnoreCase(charOrNum) ) {val += String.valueOf(random.nextInt(10));}}System.out.println("result: " + val);}public static void main(String[] args) {Scanner scanner = new Scanner(System.in);// 几位汉字System.out.println("1: unicode编码汉字: ; 2: GBK编码汉字: ");int num = scanner.nextInt();if (num == 1) {System.out.println("请输入需要几位汉字");int len = scanner.nextInt();unicodeMethod(len);} else if (num == 2){System.out.println("请输入需要几位汉字");int len = scanner.nextInt();GBKMethod(len);}else if (num == 3){System.out.println("请输入需要几位汉字");int len = scanner.nextInt();getRandomJianHan(len);} else {System.out.println("请输入需要几位汉字");int len = scanner.nextInt();getStringRandom(len);}}}

随机生成中文的java代码相关推荐

  1. java中的随机生成算法_随机生成算法的java代码太复杂了

    public static Integer[] generateRandomArray(int n, int rangeL, int rangeR) { assert rangeL <= ran ...

  2. Java随机生成中文姓名+手机+邮编+地址

    import java.util.HashMap; import java.util.Map; /** * 随机生成中文姓名,性别,Email,手机号,住址 * @author X-rapido */ ...

  3. Java开源 之随机生成中文姓名,手机号,邮编,住址

    import java.util.HashMap; import java.util.Map;/*** 随机生成中文姓名,性别,Email,手机号,住址*/ public class RandomVa ...

  4. 用java随机生成中文名字(百家姓/常用名/随机生成汉字)

    package com.de.util;import org.apache.commons.collections.CollectionUtils; import org.apache.commons ...

  5. php生成随机汉字,PHP随机生成中文段落示例【测试网站内容时使用】

    本文实例讲述了PHP随机生成中文段落.分享给大家供大家参考,具体如下: 在创建网站的时候,很多时候都需要输入一些中文的段落来填充页面,大多数会是找一些新闻之类的来复制粘贴. 以下代码是利用php来随机 ...

  6. 【厚积薄发系列】C++项目总结8—全自动和半自动随机生成中文字符串

    需求背景: 最近数据库相关的代码,功能类似会员数据.代码写完后,需要模拟数据测试接口,其中一个字段就是用户姓名,需要模拟中文的用户名,所以就有了下面的随机生成中文的代码. 具体实现: #include ...

  7. js 利用Unicode码随机生成中文昵称

    前言 网上前辈们分享的随机昵称生成方式,都是通过随机获取事先定义的数组内容进行组合来实现随机生成一个类似真名的数据(最近我做的一个项目需求中的,要求随机生成昵称但是不要真名),那这就有点蛋疼了,我总不 ...

  8. python随机生成四位验证码的代码_Python random随机生成6位验证码示例代码

    随机生成6位验证码代码 # -*- coding: utf-8 -*- import random def generate_verification_code(): ''' randomly gen ...

  9. PIL模块与随机生成中文验证码

    今天我们要学习的内容是如何利用Python生成一个随机的中文验证码,并将图片保存为.jpeg格式. 在这之前,你首先得了解Python中的PIL库.PIL是Python Imaging Library ...

最新文章

  1. 演练:有效减法设计,才能开放加法
  2. 清华出版社送书 50 本,倒计时!
  3. 【实施工程师】Wampserver64橙色无法启动【apache】问题
  4. Maven-Dependency Mechanism
  5. Spring Boot 入门小目标 3 --- 先来试着热部署
  6. 算法(27)-最大系列
  7. 二十一天学通C++之使用throw抛出异常
  8. Aps.Net js ymPrompt消息提示组件4.0版
  9. python运行代码时标红_PyCharm 中写 Turtle代码没提示以及标黄问题
  10. 使用torch.nn.BatchNorm1d出现Tensor for argument #2 ‘weight‘ is on CPU, but expected it to on GPU错误
  11. 【IT项目管理】第4章 控制项目范围
  12. php发送exmail邮箱,php引入PHPMailer发送邮件
  13. Python3自然语言(NLTK)——语言大数据
  14. 2019年最佳JavaScript日历和事件日历脚本
  15. TS进阶之infer
  16. 每日3词 2021-03-05【point】【continue】【return】
  17. 关于在onclick事件传参
  18. 音乐歌单Android,仿网易云音乐歌单界面 Header滑动效果
  19. 更新wlan.bin文件
  20. 看了CES之后,跳槽到朝阳行业有着落了

热门文章

  1. Mac新手必看:Mac电脑多桌面管理小技巧
  2. 泰勒公式(狗3定理-张宇)【结合例题】
  3. 程序员面试趣味智力题
  4. 20多岁的年纪,做什么将来才不后悔?网友:。。。
  5. php本地环境搭建教程
  6. css同时旋转rotate3d,CSS3 旋转 rotate3d()rotatez()应用实例
  7. oracle any workload,oracle 11g dbms_workload_repository手工管理AWR快照,基线
  8. RaspBerry Pi 4B入坑指南-1
  9. threejs 高级渲染组合器—EffectComposer
  10. 一文弄懂Java设计模式之建造者模式:图解+游戏角色生成实例