-5

我有一个字符串和数组列表元素。

例如 :

String mystring = handbagging
ArrayList a = [ing, bag,and];

我想用数组列表元素替换字符串并让它成为"h+and+bag+g+ing"

请提出任何想法。提前致谢...

4

2 回答 2

0

我不确定我是否理解你的问题。您可以使用 aStringBuilder从多个字符串构建一个字符串,如下所示:

   StringBuilder builder = new StringBuilder();
    for(String s : myListWithString) {
      builder.append(s);
    }
   String resultString = builder.toString();
于 2013-04-03T07:28:23.150 回答
0

我不明白你想在这里做什么。但为了抢先一步,我将与您分享一个示例代码,它将为您提供您提到的输出。
注意:这不是优化的解决方案。
如果有重复的字符串我只是试图给你一个算法,这将不起作用
,你可以想出你自己的解决方案,因为你知道你真正想要什么。
不要做这些字符串操作,使用 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);
于 2013-04-03T07:39:45.740 回答