在PHP中,您可以使用。=连接字符串,以便字符串随着添加到其中的内容而增长。我想知道这是否可以在java中完成?我在这段代码中做了一些测试,把所有的数字都加入到一个长字符串中,但不能工作!它能以其他方式完成吗?java中的连接?
int number = 100;
for (int x = number; x <= 2; x--) {
resultat = resultat + Integer.toString(x);
}
在PHP中,您可以使用。=连接字符串,以便字符串随着添加到其中的内容而增长。我想知道这是否可以在java中完成?我在这段代码中做了一些测试,把所有的数字都加入到一个长字符串中,但不能工作!它能以其他方式完成吗?java中的连接?
int number = 100;
for (int x = number; x <= 2; x--) {
resultat = resultat + Integer.toString(x);
}
是,+=
在Java是在PHP .=
:
result += Integer.toString(x)
。您只需要在循环上方定义String resultat = ""
。 (正如其他人指出的那样 - 修复你的循环条件,它总是假的)
但是,在循环中,你最好使用StringBuilder
。字符串是不可变的,所以每次使用+
时都会创建一个新字符串(对于较大的循环,这可能效率较低)。相反:
StringBuilder builder = new StringBuilder();
for (...) {
builder.append(x);
}
String result = builder.toString();
x <= 2
是从不为x = 100
真的......
你要的条件更改为x >= 2
但是你可以使用+=
您的循环只需要一点工作的。您目前得到x <= 2
时应该是x >= 2
,否则循环永远不会运行,因为100永远不会小于2!
,因为你得到了终止条件的for
环错误的它不会在你的榜样工作。你应该把它写这样的:
String resultat = "";
int number = 100;
for (int x = number; x >= 2; x--) {
resultat = resultat + Integer.toString(x);
}
一个for
循环大致是while
循环与一些小演员。这就是为什么你必须写这样的条件。
谢谢!难怪它不工作! –
尝试使用StringBuilder.append
这样
int number = 100;
StringBuilder builder = new StringBuilder();
for (int x = number; x <= 2; x--) {
builder.append(x);
}
String result = builder.toString();
谢谢! Stringbuilder对我来说很有趣,也是新闻。 –
你什么输出? – rohit89
这段代码不会运行吗?条件是x <= 2,x被设置为100.或者我错过了什么? – Igor
是的,你是对的!它现在工作更好! –