Почему разница между эпохами миллисекундных значений Java / Scala [закрыто]JAVA

Программисты JAVA общаются здесь
Anonymous
Почему разница между эпохами миллисекундных значений Java / Scala [закрыто]

Сообщение Anonymous »

фон < /strong> < /p>
  • Преобразование строки TimeStamp в миллисекунд из Epoch < /li>
    Использование Scala Язык с библиотеками Java
  • Модульный тест

code

function (Inside Utils Class)
def stringToMillis(inputString: String): Long = {
// input date string and its formatter
val formatter = DateTimeFormatter.ofPattern("M/d/yyyy h:mm:ss a")
val localTime = LocalDateTime.parse(inputString, formatter)
val zonedTime = localTime.atZone(ZoneOffset.UTC)
zonedTime.toInstant.toEpochMilli

test
val currentTime = Instant.now
val expected = currentTime.toEpochMilli
val formatter =
DateTimeFormatter.ofPattern("M/d/yyyy h:mm:ss a").withZone(ZoneId.of("UTC"))
val timestamp = formatter.format(currentTime)
val actual = Utils.stringToMillis(timestamp) // Testing function defined above
actual should be ( expected )

Пример ошибки
1739424250000 was not equal to 1739424250305

Вопрос
Существует небольшая разница, и, следовательно, тестовый случай не сбои. Это ожидается? Есть ли какая -нибудь работа? val difference = Math.abs(expected - actual)
difference should be < 1000L // less than 1 second


Подробнее здесь: https://stackoverflow.com/questions/794 ... java-scala

Вернуться в «JAVA»