如何从未格式化的乔达时间获取分钟数



>我有以下内容:

DateTime startDate = session.getProgramSessionDetail().getStartDate();
DateTime endDate = session.getProgramSessionDetail().getEndDate();
Minutes minutes = Minutes.minutesBetween(startDate, endDate);
String testing = minutes.toString();
logger.debug("Minutes :: " + testing);

输出为:

分钟 :: PT90M

我希望输出恰到好处90这样我就可以转换为int并在其他一些字段中使用。

我可以解析它,但是没有办法只获取纯数值。

Minutes::toString() 方法以ISO8601持续时间的形式返回分钟值。在这种情况下,PT90M的意思是"持续时间为90分钟"。

要仅获取分钟值,可以使用 getMinutes() 方法,该方法将值返回为 int ,因此您可以像这样打印它:

int value = minutes.getMinutes();
logger.debug("Minutes :: " + value);

输出将是:

分钟 :: 90

由于此方法已经返回一个int,因此您无需转换它。

最新更新