Java计算一个时间段与当前时间的进度百分比

 Date nowDate = new Date();  //当前时间
 Date startDate = p.getPro().getStartDate(); //开始时间
 Date endDate = p.getPro().getEndDate(); //结束时间
 if (nowDate.getTime() <= startDate.getTime()) {
                     //未开始项目进度设置为0
     p.setTotalProgress(0L);
 } else if (nowDate.getTime() >= endDate.getTime()) {
              //已结束项目进度设置为100
     p.setTotalProgress(100L);
 } else {
     
     //结束时间和开始时间中间的天数
     Double a = (double) ((endDate.getTime() - startDate.getTime()) / (1000 * 3600 * 24));
     //当前时间和开始时间中间的天数
     Double b = (double) ((nowDate.getTime() - startDate.getTime()) / (1000 * 3600 * 24));
     //计算百分比存入
     p.setTotalProgress(Math.round(b / a * 100));
 }

你可能感兴趣的:(java问题,java)