gpt4 book ai didi

java - 行为奇怪的随机字符生成器

转载 作者:行者123 更新时间:2023-12-02 12:12:14 25 4
gpt4 key购买 nike

我正在编写这个算法,它将名称中的字母替换为随机位置的随机字母。它做了我需要它做的事情,但经过几次迭代该算法后,它开始用 1 个字母替换每个字母。

例如: 格雷格雷尔泰特已添加耶耶杰杰杰菲夫呵呵雷尔罗罗RRWR罗尔瓦瓦瓦瓦奥沃bbwbyywy毫米波嗯嗯LLW毫米波嗯嗯吉格伊伊伊伊菲夫吉吉吉吉吉维吉比比吉格格格布格库克嘎嘎CCAC哈哈CCMC扎兹拉尔厄阿哇哇万维网DDPDFFPFyypy伊皮伊FFSFRRSRSSSS三三布布三三滴滴xxxxSSSS伊尔呜呜呜ssss

我不明白为什么它在正常运行后开始这样做。非常感谢任何建议!


private static String replaceName() {

final String alphabet = "abcdefghijklmnopqrstuvwxyz";
final int alphaNum = alphabet.length();
String newName = null;

Random r = new Random();

for (int i = 0; i < (r.nextInt(name.length()) + 1); i++) {

int replaceCharAt = r.nextInt(name.length());

newName = name.replace(name.charAt(replaceCharAt), alphabet.charAt(r.nextInt(alphaNum)));
//System.out.println(newName);

}

return newName;

}

最佳答案

您的代码不会交换位置,它将出现的一个字符替换为另一个字符。

使用 char 数组会更好

char[] stringChars = yourString.toCharArray();

用索引替换 then 并返回一个字符串

String result = new String(stringChars);

关于java - 行为奇怪的随机字符生成器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46456680/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com