java - 如何拆分字符串数组并将字符串存储在另一个数组中

标签 java arrays string

我有一个包含 "-" 的字符串数组。所以我必须拆分这些字符串来存储它们。

例如。

字符串 s[]={"a","b","c","-","g","t","-","q","-","a ","s","d","-","a","b","y"};

字符串 k[]={"abc","gt","q","asd","aby"}

我尝试过的代码是

 public static void main(String...a)
{


String s[]={"a","b","c","-","g","t","-","q","-","a","s","d","-","a","b","y"};

int sop=0;

                 String[] sdf=new String[100];

 for(int kk=0;kk<s.length;kk++)
             {

              if(s[sop].equals("-"))
              {

              }
              else
              {
              sdf[sop]=s[sop];

               sop++;
              }

             }
}

但是它给出了前三个字符串。 abc。我需要添加什么?

最佳答案

你可以这样尝试:

public static void main(String[] args) {
    String[] s = {"a","b","c","-","g","t","-","q","-","a","s","d","-","a","b","y"};
    StringBuilder builder = new StringBuilder();
    ArrayList<String> k = new ArrayList<String>();
    for (String str : s) {
        if (str.equals("-")) {
            k.add(builder.toString());
            builder.setLength(0);
        } else builder.append(str);
    }
    k.add(builder.toString());
    System.out.println(Arrays.toString(k.toArray(new String[k.size()])));
}

输出:

[abc, gt, q, asd, aby]

关于java - 如何拆分字符串数组并将字符串存储在另一个数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23134812/

相关文章:

java - 使用 FIFO 缓冲区的正确方法

java.lang.ClassNotFoundException : SecuGen. FDxSDKPro.jni.JSGFPLib

javascript - 如何搜索字符串数组并产生建议性结果

c - 如何从字符串中提取实数?

c - 如何在 C 中创建(和使用)指向字符串数组的指针数组?

java - 当找到一个特定的单词并打破时

java - Swing JForm 卡住直到操作完成

java - 如何在vlcj中使用 "MediaPlayer"准备播放列表?

arrays - Sonar 问题 : remove use of String(byte[])

arrays - 如何在 golang 运行时动态设置数组的索引?