java数组循环取值并重组成新的list

String name = "桌椅";
String str = "114400:打印机:224400:钟表:334400:自行车:444400:雨伞:554400:收音机:664400:电脑";
String[] temp = str.split(":");
for(String word : temp)
{
System.out.print(name+word+";");
}
这样得到的结果是:桌椅114400;桌椅打印机;桌椅224400;桌椅钟表;桌椅334400;桌椅自行车;桌椅444400;桌椅雨伞;桌椅554400;桌椅收音机;桌椅664400;桌椅电脑;
期望得到的结果:桌椅;打印机;钟表;自行车;雨伞;收音机;电脑;
该怎么写啊。谁教教我~

import java.util.ArrayList;
import java.util.List;

public class $ {

    public static void main(String[] args) {
        String name = "桌椅";
        String str = "114400:打印机:224400:钟表:334400:自行车:444400:雨伞:554400:收音机:664400:电脑";

        // 1.先用正则表达式,替换所有的数字
        System.out.println("替换前:" + str);
        str = str.replaceAll("[\\d]", "");
        System.out.println("替换后:" + str);

        // 2.转化为数组
        String[] temp = str.split(":");

        List data = new ArrayList();

        // 3.先把neme 放入list;
        data.add(name);

        for (String word : temp) {

            // 空字符串不放进去
            if (!"".equals(word)) {
                data.add(word);
            }
        }

        // 桌椅;打印机;钟表;自行车;雨伞;收音机;电脑
        System.out.println("期望值:桌椅;打印机;钟表;自行车;雨伞;收音机;电脑");
        System.out.println("实际值:" + data);
    }
}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-11-04
for(int i =0;i<temp.length();i++){
String sum = "";
if(i%2==0){
sum+= temp[i];

}

System.out.println(name+sum);

}
第2个回答  2015-11-04
你想得到什么结果,看不太明白。。就是不要数字,还有把桌椅拼到前面去?追问

相似回答