public static void main(String[] args) {
double g = 1 / 3;
System.out.printf("%.2f", g);
}
Поскольку как 1, так и 3 являются ints, результат не округлен, но он усечен. Таким образом, вы игнорируете фракции и выполняете только целые.
Чтобы избежать этого, по крайней мере одно из ваших чисел 1 или 3 как десятичная форма 1.0 и / или 3.0.
Вы рассмотрели использование System.nanoTime () ?
Это только значимо в разработке прошедшего времени между двумя событиями. Так как документация указывает, что не связана ни с какой системой или стенное время, я полагаю, что она могла использоваться в Вашем sitatuion.
JodaTime имеет класс, чтобы сделать это. Это называют Продолжительность .
"Они не имеют никакой хронологии или часового пояса, и состоят только из продолжительности миллисекунды".
Также Вы могли установить свою Отметку даты на Среднеевропейское время, и Протокол сетевого времени не должен быть проблемой.