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