拆分java虚线字符串

时间:2011-12-09 12:27:38

标签: java string split

我有一个字符串

str[] where str[0]="My-Name";
str[1]="is-drew";

我希望获得一个新字符str1[] str1[0]="My"str1[1]="Name"str1[2]="is"str[3]="drew"。我尝试编写的代码使用split()方法并使用String,但过于复杂且无法运行。是否有更简单的方式使用,例如StringBuilderArray

for(int i=0;i<result0.length;i++){
    temp=result0[i];
    temp1=temp.split("-");
    for(int y=0;y<temp1.length;y++){
        result1[y+z]=temp1[y];
        z=z+1;
    }
}

4 个答案:

答案 0 :(得分:2)

为什么这很复杂!

String.split("-") 

返回字符串数组。

正是您需要的

这将返回你需要的东西。

public String[] splitMe(String[] arr){
    ArrayList<String> retList = new ArrayList<String>();
    for(String t:arr){
        String[] splits = t.split("-");
        for(String s: splits){
            retList.add(s);
        }
    }
    return retList.toArray(new String[retList.size()]);
}

答案 1 :(得分:2)

为什么你说String.split(...)不适合你。你可以这样做:

String myString = "My-Name".split("-")[0];
String nameString = "My-Name".split("-")[1];

它应该可以正常工作。

答案 2 :(得分:1)

str[i].split("-"); 这会将字符串My-Name拆分为MyName List strList = new ArrayList(); // this part iterates strList.addAll(Arrays.asList(str[i].split("-")); strList.toArray(); // you have an array with all the split string.

你走了。

答案 3 :(得分:1)

您可以使用split方法完成所有工作。作为附加建议,您可以使用列表:

final String[] str = new String[2];
str[0] = "My-Name";
str[1] = "is-drew";

final List<String> sum = new ArrayList<String>(4);
for (final String part : str) {
   sum.addAll(Arrays.asList(part.split("-")));
}