Como um StringBuilder pode ser melhor convertido em um String []?

O código a seguir meio que funciona, mas corrige o número de elementos na String []. Existe uma maneira de fazer um String [] adicionar o número de elementos necessários dinamicamente?

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;
}

questionAnswers(5)

yourAnswerToTheQuestion