0

我有一堆包含时间值的数据,例如上午 09:30,以及持续时间(15、30、45 或 60)。从这些值中获取结束时间的最佳方法是什么?是否会使用日期/日历,或者只是一个自定义函数会更快?

4

3 回答 3

1

Joda Time 库 ( http://www.joda.org/joda-time/ ) 很受欢迎,易于使用,并以直接的方式处理这些类型的计算。

DateTime start = new DateTime(2013, 10, 15, 9, 30); // create a DateTime representing Oct 15, 2013 at 9:30
Duration dur = Duration.standardMinutes(15); // create a duration of 15 minutes
DateTime calc = start.plus(dur); // add; result is 9:45 on 10/15/2013
于 2013-10-15T15:20:48.750 回答
1

标准的 java/android 方法是使用日历:

    final Calendar c = Calendar.getInstance(); // now

    c.add(Calendar.DAY_OF_MONTH, 10); // add 10 days

如果您想添加分钟、年、秒,还有其他常量......

于 2013-10-15T16:23:44.387 回答
0

查看此解决方案:Java 字符串到日期转换

您可能需要更改该"MMMM d, yyyy"部分以适合您的数据集。

这里是 Javadoc:http: //developer.android.com/reference/java/text/SimpleDateFormat.html

编辑:对于您问题的第二部分,这里有几个关于如何添加到日期/日历对象的问题。

于 2013-10-15T15:17:01.467 回答