Не совсем понятно, почему вы проходите PrintStream и т. Д. Что не так с:
public static String makeTimestamp()
{
long millis = System.currentTimeMillis();
return String.format("%.7f", millis / 1000.0);
}
На моем нетбуке это занимает около 0,04 мс за итерацию ... но даже ваш оригинальный код занимает всего около 0,1 мс за итерацию. На чем вы работаете, что в настоящее время занимает 2-3 мс? Вы работаете в отладчике, например? Я не могу понять, почему это так медленно, ведь мой нетбук не слишком быстрая машина.
Хотя все характеристики важны, я бы сказал, что основным преимуществом вышеуказанного метода по сравнению с вашим оригиналом является простота. Оригинал очень сложный безо всякой на то причины.