java: use StringBuilder to insert at the beginning

前端 未结 9 1956
佛祖请我去吃肉
佛祖请我去吃肉 2021-01-30 03:55

I could only do this with String, for example:

String str=\"\";
for(int i=0;i<100;i++){
    str=i+str;
}

Is there a way to achieve this wit

9条回答
  •  无人共我
    2021-01-30 04:30

    As an alternative solution you can use a LIFO structure (like a stack) to store all the strings and when you are done just take them all out and put them into the StringBuilder. It naturally reverses the order of the items (strings) placed in it.

    Stack textStack = new Stack();
    // push the strings to the stack
    while(!isReadingTextDone()) {
        String text = readText();
        textStack.push(text);
    }
    // pop the strings and add to the text builder
    String builder = new StringBuilder(); 
    while (!textStack.empty()) {
          builder.append(textStack.pop());
    }
    // get the final string
    String finalText =  builder.toString();
    

提交回复
热议问题