日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

随机名字生成小demo源码

發布時間:2023/12/10 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 随机名字生成小demo源码 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

根據提供的文字隨機生成指定字符的名稱,挺簡單的,一個小demo吧

源字符

?

?

?

package com.example.demo;import cn.hutool.core.util.RandomUtil;import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.FileReader; import java.io.FileWriter; import java.util.TreeSet;/*** 隨機名字生成小demo** @author silence丶你的名字* createTime 2021-08-12-16:35*/ public class RandomName {public static void main(String[] args) throws Exception {//字數int length = 3;//生成的名稱總數量int nameSize = 1000;//源文件路徑String path = "D:\\silence\\java相關雜貨鋪\\博客解答記錄\\silence\\";//讀取文本BufferedReader reader = new BufferedReader(new FileReader(path + "常用字庫表6763個.txt"));String line;StringBuilder sb = new StringBuilder();while ((line = reader.readLine()) != null) {sb.append(line);}reader.close();String names = sb.toString();if (names.length() <= 0) {System.exit(-1);}//隨機生成名字放到treeSet 防止重復名稱TreeSet<String> treeSet = new TreeSet<>();for (int i = 0; i < nameSize; i++) {String name = RandomUtil.randomString(names, length);if (name.length() == length) {treeSet.add(name);}}//寫出System.out.println(treeSet.size() + ":個名稱");BufferedWriter writer = new BufferedWriter(new FileWriter(path + length + "個字.txt"));for (String name : treeSet) {writer.write("\t\t\t\t\t\t\t" + name);writer.newLine();writer.flush();}writer.close();} }

?

?整體代碼都比較簡單。主要是讀取源文件,?然后隨機生成,再寫入新文件

讀取:用的是原生的io流,本來想用糊涂工具包封裝的,但是\r\n?特殊字符也給讀取到String里面了,就沒用。

隨機生成:?

String name = RandomUtil.randomString(names, length); 主要是糊涂工具包的一個方法,傳入源字符,和需要生成的字符個數就可以,其實用Random 通過下標去組合也行。工具類用著主要是精簡吧。

寫出: BufferedWriter? 沒啥特別的,主要是想用他的newLine()?根據不同的系統實現換行

總結

以上是生活随笔為你收集整理的随机名字生成小demo源码的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。