Java 在现有字符串的开头连接新字符串
我想将新字符串连接到现有字符串的开头,例如, 当前字符串=“并且我希望始终将新字符串连接到旧字符串的开头:Java 在现有字符串的开头连接新字符串,java,string-concatenation,Java,String Concatenation,我想将新字符串连接到现有字符串的开头,例如, 当前字符串=“并且我希望始终将新字符串连接到旧字符串的开头: String msg="Java One",temp; for(int i=msg.length()-2;i>0;i--){ 在这里,我创建了一个循环,从msg的末尾开始,在结束后temp应该包含“javaone”,但顺序是这样的 e ne one a one va one } 依此类推您可以在每次迭代中获得不同的子字符串 for(int i=msg.lengt
String msg="Java One",temp;
for(int i=msg.length()-2;i>0;i--){
在这里,我创建了一个循环,从msg的末尾开始,在结束后temp应该包含“javaone”,但顺序是这样的
e
ne
one
a one
va one
}
依此类推您可以在每次迭代中获得不同的子字符串
for(int i=msg.length()-1;i>=0;i--){
System.out.println(msg.substring(i,msg.length()));
}
当然,您可以存储生成的每个子字符串,并根据需要使用它
请注意,这种方法可能更有效,因为尽管将创建新的String
对象,但可能会对所有对象使用相同的底层char[]
对象
还要注意,我们是从
msg.length()-1
(而不是-2,作为问题中的原始代码)和i>=0
(而不是i>0
,作为原始问题)进行迭代的
我希望总是将新字符串连接到旧字符串的开头
这很简单,但不是很有效:
String oldString = "";
for (...) {
// Prepare your new string
String newString = ... ;
// Add the new string at the beginning of the old string
oldString = newString + oldString;
}