Java에서 밀리초를 분과 초로 변환

Shubham Vora 2023년10월12일
  1. java.util.concurrent 패키지를 사용하여 밀리초를 분 및 초로 변환
  2. 수학 공식을 사용하여 밀리초를 분과 초로 변환
  3. java.time 라이브러리 메서드를 사용하여 밀리초를 분 및 초로 변환
Java에서 밀리초를 분과 초로 변환

이 기사에서는 Java에서 밀리초를 분과 초로 변환하는 세 가지 방법을 소개하고 예제 코드와 함께 하나씩 살펴보겠습니다.

java.util.concurrent 패키지를 사용하여 밀리초를 분 및 초로 변환

java.util 라이브러리의 concurrent 패키지에는 Java에서 시간을 관리하는 TimeUnit 클래스가 포함되어 있습니다. 사용자는 toSeconds()toMinutes() 메서드를 사용하여 각각 밀리초를 초 및 분으로 변환할 수 있습니다. toSeconds()toMinutes() 메소드 모두 밀리초를 매개변수로 사용합니다.

사용자는 TimeUnit 클래스를 사용하여 밀리초를 분과 초로 변환하려면 아래 구문을 따라야 합니다.

toSeconds()toMinutes() 구문:

long seconds = TimeUnit.MILLISECONDS.toSeconds(mlSeconds);
long minutes = TimeUnit.MILLISECONDS.toMinutes(mlSeconds);

매개변수:

mlSeconds 분과 초를 변환하는 것은 밀리초입니다.

예제 코드:

import java.util.concurrent.TimeUnit;
public class Test {
  public static void main(String[] args) {
    long mlSeconds = 343232232;
    // Converting Milliseconds to seconds
    int seconds = (int) TimeUnit.MILLISECONDS.toSeconds(mlSeconds);
    System.out.format("%d Milliseconds = %d seconds\n", mlSeconds, seconds);
    // converting Milliseconds to minutes
    int minutes = (int) TimeUnit.MILLISECONDS.toMinutes(mlSeconds);
    System.out.format("%d Milliseconds = %d minutes\n", mlSeconds, minutes);
    System.out.format(
        "%d Milliseconds = %d minutes and %d seconds", mlSeconds, minutes, seconds % 60);
  }
}

출력:

343232232 Milliseconds = 343232 seconds
343232232 Milliseconds = 5720 minutes
343232232 Milliseconds = 5720 minutes and 32 seconds

위의 출력에서 사용자는 밀리초를 초, 분, 분, 초로만 변환했음을 알 수 있습니다.

수학 공식을 사용하여 밀리초를 분과 초로 변환

밀리초를 분과 초로 변환하는 가장 좋은 방법은 내부 또는 외부 라이브러리가 아닌 수학 공식을 사용하는 것입니다.

아래 예에서는 1분에 60000밀리초가 포함되어 있으므로 분을 얻기 위해 밀리초를 1000*60으로 나누었습니다. 그런 다음 남은 초를 얻기 위해 밀리초를 1000으로 나누고 모듈로를 60으로 취하여 남은 초를 반환합니다.

예제 코드:

public class Test {
  public static void main(String[] args) {
    long mlSeconds = 2323132;
    // Divide milliseconds by 1000 and perform modulo by 60 to get seconds
    long seconds = (mlSeconds / 1000) % 60;
    // Divide milliseconds by 1000*60 to convert to minutes as 1 minute contains the 60000
    // milliseconds
    long minutes = mlSeconds / (1000 * 60);
    System.out.format("%d Milliseconds = %d minutes and %d seconds", mlSeconds, minutes, seconds);
  }
}

출력에서 사용자는 2323132밀리초가 38분 43초임을 알 수 있습니다.

산출

2323132 Milliseconds = 38 minutes and 43 seconds

java.time 라이브러리 메서드를 사용하여 밀리초를 분 및 초로 변환

java.time 라이브러리에는 Duration 클래스가 포함되어 있으며 두 시간 사이의 기간을 가져오는 데 사용할 수 있습니다. 또한 시간을 초 또는 분으로 변환하는 내장 메서드가 포함되어 있습니다.

아래 예제에서는 두 시간 사이의 지속 시간을 가져와 dura 객체 내부에 저장했습니다. 총 초를 얻기 위해 dura 객체에서 getSeconds() 메서드를 호출했으며, 동일한 방식으로 총 지속 시간(분)을 얻기 위해 toMinutes()를 사용했습니다.

예제 코드:

import java.time.*;
public class DurationExample4 {
  public static void main(String[] args) {
    // get duration between two times
    Duration dura = Duration.between(LocalTime.MIN, LocalTime.NOON);
    // get the total seconds of duration
    System.out.println("Total duration in seconds is: " + dura.getSeconds());
    // get the total minutes for the duration
    System.out.println("Total duration in minutes is: " + dura.toMinutes());
  }
}

출력:

Total duration in seconds is: 43200
Total duration in minutes is: 720

사용자는 밀리초를 분, 초 또는 분과 초로 변환하는 세 가지 다른 방법을 배웠습니다. 세 가지 방법 중 가장 좋은 성능을 낼 수 있는 수학 공식을 사용하는 것이 좋습니다.

작가: Shubham Vora
Shubham Vora avatar Shubham Vora avatar

Shubham is a software developer interested in learning and writing about various technologies. He loves to help people by sharing vast knowledge about modern technologies via different platforms such as the DelftStack.com website.

LinkedIn GitHub

관련 문장 - Java Time