StringBuilder如何最好地转换为String []?

jac*_*nad 9 java string stringbuilder android

以下代码有效,但修复了String []中的元素数量.有没有办法让String []动态添加所需的元素数量?

private static StringBuilder names = new StringBuilder();
...
public String[] getNames() {
    int start = 0;
    int end = 0;
    int i = 0;
    String[] nameArray = {"","","",""};

    while (-1 != end) {
        end = names.indexOf(TAB, start);            
        nameArray[i++] = names.substring(start, end);
        start = ++end; // The next name is after the TAB
    }
    return nameArray;
}
Run Code Online (Sandbox Code Playgroud)

Jon*_*eet 21

所以你只是试图拆分标签?怎么样:

return names.toString().split(TAB);
Run Code Online (Sandbox Code Playgroud)

请注意,split采用正则表达式模式 - 所以不要指望split(".")只在点上拆分,例如:)

  • 我的回答是注定的!伟大的@JonSkeet在我做的前三秒回答.:-)读你的书Jon.这很棒. (6认同)
  • 完善!只需要这一行.是的,TAB是\ t.太感谢了. (2认同)