我有一个字符串和数组列表元素。
例如 :
String mystring = handbagging
ArrayList a = [ing, bag,and];
我想用数组列表元素替换字符串并让它成为"h+and+bag+g+ing"
请提出任何想法。提前致谢...
我有一个字符串和数组列表元素。
例如 :
String mystring = handbagging
ArrayList a = [ing, bag,and];
我想用数组列表元素替换字符串并让它成为"h+and+bag+g+ing"
请提出任何想法。提前致谢...
我不确定我是否理解你的问题。您可以使用 aStringBuilder
从多个字符串构建一个字符串,如下所示:
StringBuilder builder = new StringBuilder();
for(String s : myListWithString) {
builder.append(s);
}
String resultString = builder.toString();
我不明白你想在这里做什么。但为了抢先一步,我将与您分享一个示例代码,它将为您提供您提到的输出。
注意:这不是优化的解决方案。
如果有重复的字符串我只是试图给你一个算法,这将不起作用
,你可以想出你自己的解决方案,因为你知道你真正想要什么。
不要做这些字符串操作,使用 stringBuffer 或 StringBuilder
String mystring = "handbagging";
ArrayList<String> a = new ArrayList<String>();
a.add("ing");
a.add("bag");
a.add("and");
System.out.println(mystring);
for (Iterator<String> iterator = a.iterator(); iterator.hasNext();) {
String string = iterator.next();
if(mystring.contains(string)){
int index = mystring.indexOf(string);
mystring = mystring.substring(0, index) + "+" + string + "+" + mystring.substring(index + string.length());
}
}
if(mystring.endsWith("+")){
mystring = mystring.substring(0, mystring.length() - 1);
}
while(mystring.contains("++")){
mystring = mystring.replace("++", "+");
}
System.out.println( "---" + mystring);