Java TimeUnit convert()方法及示例
TimeUnit类的convert()方法用于将给定单位中的时间长度转换为该单位。由于转换涉及从大单位到小单位或从小单位到大单位,因此在使用该方法时可能会出现精度损失和溢出。
语法。
public long convert(long sourceDuration, TimeUnit sourceUnit)
参数。这个方法接受两个强制性参数。
sourceDuration – 是在给定的sourceUnit中的时间长度。sourceUnit – 是 sourceDuration 参数的单位。返回值。这个方法返回这个单位的转换后的持续时间,如果转换会出现负溢出,则返回Long.MIN_VALUE,如果会出现正溢出,则返回Long.MAX_VALUE。
以下程序说明了TimeUnit convert()方法的实现。
程序1:将分钟转换为毫秒
// Java program to demonstrate// convert() method of TimeUnit Class import java.util.concurrent.*;import java.util.Date; class GFG { public static void main(String args[]) { // Get time to be converted in Minutes long timeInMinutes = 55L; // Create a TimeUnit object TimeUnit time = TimeUnit.MILLISECONDS; // Convert Minutes to milliseconds // using convert() method System.out.println("Time " + timeInMinutes + " minutes in milliSeconds = " + time.convert(timeInMinutes, TimeUnit.MINUTES)); }}
输出:
Time 55 minutes in milliSeconds = 3300000
程序2:将秒转换为分
// Java program to demonstrate// convert() method of TimeUnit Class import java.util.concurrent.*;import java.util.Date; class GFG { public static void main(String args[]) { // Get time to be converted in Seconds long timeInSec = 300L; // Create a TimeUnit object TimeUnit time = TimeUnit.MINUTES; // Convert Seconds to Minutes // using convert() method System.out.println("Time " + timeInSec + " seconds in minutes = " + time.convert(timeInSec, TimeUnit.SECONDS)); }}输出:
Time 300 seconds in minutes = 5
