【发布时间】:2017-09-02 19:43:58
【问题描述】:
我已经尝试了下面的代码,但它显示了一些错误..
String str="AAA";
char[] ch=str.toCharArray();
int length=str.length();
for(int i=length-1;i>=0;i--)
{
for(int j=65;j<=90;j++)
{
System.out.println(str.replace(ch[i] ,(char)j));
}
}
【问题讨论】:
-
请包括你得到的具体错误。
-
它运行良好。它只是不会产生你想要的输出。
-
这更像是一个逻辑问题而不是编码问题。我会亲自增加 3 个嵌套循环中的每个字符
-
for (char c = 'A'; c <= 'Z'; c++)在 Java 中工作得很好。很少需要弄乱字符代码。 -
概括Permutation of an array, with repetition, in Java 来解决您的问题应该不会太难,尽管如果它仅用于 3 个字符,这可能是矫枉过正。要了解为什么您的方法不起作用,请拿起笔和纸,写下数组每次迭代时发生的情况(并阅读
String.replace所做的事情,因为这不是您的想法)。
标签: java