如何只用一个字段显示经过的时间。
例如
所以我只想要最高的可用字段。
答案 0 :(得分:2)
Joda-Time中没有方法可以执行此操作,因此您必须手动依次测试每个字段。
答案 1 :(得分:1)
这将起作用
val startDate = new DateTime(millis).withZone(dateTimeZone)
val endDate = new DateTime(dateTimeZone)
val period = new Period(startDate, endDate)
val localized = PeriodFormat.wordBased(localeLanguageCode).print(period)
val splitted = localized.split(",|and")
因此,分割值将是一个包含周期段的数组,从较大的周期到较低的周期。
数组的头部是您正在寻找的值。
slitted.head + "Ago."
*您应该根据您的区域设置更改拆分方法上的REGEX模式,或者您是否使用自定义格式化程序而不是默认格式化程序(PeriodFormatterBuilder)
实施例。阵列(" 4年"," 2个月"," 5天"," 18小时"," 15分钟&#34 ;," 10秒"," 50毫秒")
答案 2 :(得分:0)
明显的算法是测试年份> 0,在这种情况下你使用它,如果没有测试,如果月份> 0等 可能会有更优雅的东西,但这可以在不到15行的代码中工作......