我正在为我的私人服务器制作人工智能机器人。他们的名字必须是随机且唯一的,所以我做了一个从网站中检索随机字符串的函数。生成 3 个名称并将它们添加到数组列表需要一秒钟。这意味着在 10 分钟内我得到了 1800 个随机生成的字符串。
这有点糟糕,因为我需要在尽可能短的时间内获得大量名称,所以我创建了多个线程,在不到一分钟的时间内生成了这 1800 个名称。但我不确定这是否是一个好习惯。
public static void init() {
for (int i = 0; i < 600; i++) {
new Thread("" + i) {
public void run() {
for (int j = 0; j < 3; j++) {
names.add(NameGenerator.generateRandomName(Utils.random(3, 12)));
}
}
}.start();
}
}
我认为这不是有效的,也不是最佳实践。
编辑:(添加功能)
public static ArrayList<String> names = new ArrayList<String>();
public static String generateRandomName(int length) {
String result;
try {
result = postURL("https://jimpix.co.uk/generators/word-generator.asp#result",
"go=yes&ul1=0&chars=" + length + "&match=1&numwords=1&alpha=0&lk=", 30000);
} catch (IOException e) {
Logger.logObject("Failed generating a new name");
return null;
}
result = result.substring(result.indexOf("check-username.asp?u=") + "check-username.asp?u=".length(),
result.indexOf("\"><span style=\"color:white;"));
return capitalizeFirstLetter(result);
}
ibeautiful
蝴蝶不菲
慕婉清6462132
相关分类