Java 反转字符串变量
所以我有这个代码:Java 反转字符串变量,java,string,loops,reverse,Java,String,Loops,Reverse,所以我有这个代码: int in = 496; boolean b = true; Sting s = "": if (b) { int test = 0; System.out.print(in + ":"); for (int i = 1; i < in; i++) { if (in % i == 0) { test += i; s += i
int in = 496;
boolean b = true;
Sting s = "":
if (b) {
int test = 0;
System.out.print(in + ":");
for (int i = 1; i < in; i++) {
if (in % i == 0) {
test += i;
s += i + " ";
}
}
System.out.println(" ");
} else {
System.out.println(in + " no factorials");
}
int in=496;
布尔b=真;
Sting s=“”:
如果(b){
int检验=0;
系统输出打印(输入+“:”;
for(int i=1;i
它是这样打印的:
496:1 2 4 8 16 31 62 124 248
但我想反转阶乘输出,如下所示:
496:2481246213168421
我试着反转for循环,但它成功了,所以有什么想法吗 更改循环确实是您需要的:
for (int i = in-1; i > 0; i--) {
顺便问一下,你是如何发布代码的?粘贴(或键入)的内容不会打印任何阶乘,
s=+…
应该是s+=…
,对吗?请尽量简明扼要,这样我们只能猜测/纠正真正的问题,而不能纠正任何打字错误。未经测试,但为什么这不起作用
int in = 496;
boolean b = true;
Sting s = "":
if (b) {
int test = 0;
System.out.print(in + ":");
for (int i = in-1; i > 0; i--) {
if (in % i == 0) {
test += i;
s =+ i + " ";
}
}
System.out.println(" ");
} else {
System.out.println(in + " no factorials");
}
此外,如果您使用更好的变量名,它将帮助所有人。。。一旦你的方法变得更复杂,就很难遵循“s”、“b”、“i”甚至“in”。看这里:向我们展示你反转循环的代码。我看到
=+
你的意思是+=
?我尝试过for循环:for(int i=in;i>=0;i-)
,但它不起作用,但我看到@Bart answer是有效的。Bart刚刚打败了我。这就是我在回答中所改变的。是的,=+
是一个打字错误,使用这种方法很有效!行s+=i+''中有一个输入错误代码>它应该s+=i+''的位置代码>和我的道歉,我试图使这段代码非常简短,因为它只是一个测试代码到一个更大的程序。