HopefullyHelpful HopefullyHelpful - 16 days ago 5
Java Question

StringBuilder.toString() is printed as empty string in Eclipse-console when too big?

The following returns nothing for me in eclipse, is this expected behaviour ?

StringBuilder sb = new StringBuilder("");
for(int i = 0; i < 256*256*2*6; i++) {
sb.append("a");
}
System.out.println(sb.toString());


The code returns without error and the size is well withhin memory capacity unlike in Maximum number of characters stringbuilder can accommodate

Solved: The problem lies in the eclipse console and enabling (Window -> Preferences -> Run/Debug -> Console -> fixed width console) will print the line normally.

Answer

The problem is probably your console being unable to print such a long string. If you try:

System.out.println(sb.toString().length());

instead, it will print what you expect (786432).

Comments