I need to cut the time it takes to print a large string by ~50%. I went from using `s1 + s2` to using `StringBuilder`, and instead of making several calls to `System.out.print` for each line, I create one large string by appending newlines to the `StringBuilder`, and then print that large string just once with `System.out`. But my code is still way too slow (this is for a homework assignment and the code is not accepted by the automated hand-in system because it takes too long). When the `StringBuilder` is printed, the string has ~100k lines The relevant part of my code looks like this: ``` public class Main { public static void main (String[] args){ MyClass builder = new MyClass(); new ClassThatBuildsOnBuilder(builder); System.out.println(builder.str.toString()); } } ``` ``` public class MyClass { private double[] coordinates = new double[]{0, 0, 0, 0}; public StringBuilder str = new StringBuilder(); private DecimalFormat formatter = new DecimalFormat("#0.0000"); public MyClass(){ } public void changeValues(double[] coordinates){ this.coordinates = coordinates; updateRow(); } private void updateRow(){ for (double d : coordinates){ str.append(formatter.format(d)); str.append(" "); } str.append("\n"); } ``` Can this even be optimized further? I feel like this should be very close to a lower bound.