Get the time difference between two times (take minutes as an example)

test:

   public static void main(String[] args) {
        Date date = new Date();
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        String endTime = simpleDateFormat.format(date);
        try{
            long i=getTimeDifference("2022-12-05 12:00:00",endTime);
            if(i<10) {
                System.out.println("维修时间为" + i + "分钟!,需超过10分钟!");
            }else {
                System.out.println("维修完成");
            }
        }catch(Exception e) {
            e.printStackTrace();
        }

Tools:

   public static long getTimeDifference(String oldTime,String newTime) throws ParseException {

        SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        long NTime =df.parse(newTime).getTime();
        //从对象中拿到时间
        long OTime = df.parse(oldTime).getTime();
        long diff=(NTime-OTime)/1000/60;
        return diff;
    }

result

public static void main(String[] args) throws ParseException {
    //十位数时间戳
    long start = 1611298952;
    long end = 1611299007;
    long diffSeconds = end - start;
    Double minute = new BigDecimal((float) diffSeconds / 60).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
    Double hour = new BigDecimal((float) diffSeconds / (60 * 60)).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
    //时间戳为13位时
    //Double minute = new BigDecimal((float) diffSeconds / (1000 * 60)).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
    //Double hour = new BigDecimal((float) diffSeconds / (1000 * 60 * 60)).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
    System.out.println(minute);   //打印结果:0.92
    System.out.println(hour);   //打印结果:0.02
}

Supongo que te gusta

Origin blog.csdn.net/weixin_55823910/article/details/128189335
Recomendado
Clasificación