我有两个java.util.Date
实例,其中包含日期值和时间值。现在我想把这些值组合起来,创建一个代表日期和时间的java.util.Date
实例。
这里有一些例子来说明我想要什么:
Date date = 2015-06-01;
Date time = 22:30;
合并成:
Date dateTime = 2015-06-01 22:30;
我做了一些搜索,发现了这个问题组合java.util.Dates创建日期-时间这和我现在的问题很相似。
您可以使用Calendar
,而不需要使用JODA但是,正如您所问的关于JODA的问题,在JODA中可以这样做:
// you want the date part from it
Date d = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss").parse("2013-01-02 03:04:05");
// you want to time part from it
Date t = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss").parse("2014-02-03 04:05:06");
LocalDate datePart = new LocalDate(d);
LocalTime timePart = new LocalTime(t);
LocalDateTime dateTime = datePart.toLocalDateTime(timePart);
Date result = dateTime.toDate();
// Or shrink the above 4 lines into one, as follow
// Date result = new LocalDate(d).toLocalDateTime(new LocalTime(t)).toDate();
System.out.println("result " + result);
// print out result Wed Jan 02 04:05:06 CST 2013
用日历代替?
特别是set(int year,int月,int日期,int hourOfDay,Int分钟)和
如果你想要一个日期,使用getTime() ?
还是使用Calendar类的setTime(Date ..
函数将Date对象转换为Calendar对象,使用Calendar类的函数提取值(日,小时,分钟)?