import java.text.DecimalFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
public class test{
public static void main(String[] args) {
String startTime = "2018-10-01 05:57:23";
String endTime = "2018-10-01 07:17:23";
double hours = 0;
try {
hours = caculateTotalTime(startTime,endTime);
} catch (ParseException e) {
e.printStackTrace();
}
System.out.println("间隔:"+hours+"小时");
}
public static double caculateTotalTime(String startTime,String endTime) throws ParseException{
SimpleDateFormat formatter = new SimpleDateFormat( "yyyy-MM-dd HH:mm:ss" );
Date date0 = formatter.parse(startTime);
Date date1= formatter.parse(endTime);
long ts0 = date0.getTime(); //getTime()返回共 多少毫 秒。x/1000=?秒; 继续 x/60=?分; 继续 x/60=?小时; 继续 x/24=?天; 继续 x/360=?年 !!!
long ts1 = date1.getTime();
double ts2=ts1-ts0;
double totalTime = 0;
totalTime=(ts2/(3600*1000));
String st = null; //String 基本类型,被final定义,所以必须初始化
DecimalFormat df=new DecimalFormat(".#"); //保留1位小数
st=df.format(totalTime);
return Double.parseDouble(st);
}
/*
* 方法二(只计算hour):
*
* SimpleDateFormat formatter = new SimpleDateFormat( "yyyy-MM-dd HH:mm:ss" );
Date date1 = formatter.parse(startTime);
Date date2 = formatter.parse(endTime);
Calendar rightNow = Calendar.getInstance();
rightNow.setTime(date1);
int h1=rightNow.get(rightNow.HOUR_OF_DAY);
rightNow.setTime(date2);
int h2=rightNow.get(rightNow.HOUR_OF_DAY);
System.out.println(h1+" "+h2);
return h2-h1;
*/
}
从开始时间到结束时间内,间隔多少hours?(保留1位小数)
猜你喜欢
转载自blog.csdn.net/Lihua_hua/article/details/84103311
今日推荐
周排行